@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-gray-600:#4a5565;--color-white:#fff;--spacing:.25rem;--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-bold:700;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius-panel:.875rem}@supports (color:lab(0% 0 0)){:root,:host{--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-gray-600:lab(35.6337% -1.58697 -10.8425)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.isolate{isolation:isolate}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.h-screen{height:100vh}.w-full{width:100%}.shrink{flex-shrink:1}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.bg-blue-600{background-color:var(--color-blue-600)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-gray-600{color:var(--color-gray-600)}.text-white{color:var(--color-white)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#e9eeed;--surface:#fbfcfb;--surface-raised:#fff;--surface-sunken:#eff3f2;--ink:#16324b;--ink-strong:#0e2438;--ink-soft:#37566d;--ink-muted:#4d6878;--ink-faint:#5b7183;--ink-on-accent:#fff;--line:#cbd8d5;--line-strong:#b0c2be;--line-soft:#dde5e3;--track:#dde5e3;--accent:#0a7a74;--accent-strong:#05635f;--accent-soft:#dcefeb;--accent-bright:#0f8f89;--positive:#0f6a4a;--positive-soft:#e2f0e9;--negative:#a11f2d;--negative-soft:#fbe8e9;--negative-ink:#fbe8e9;--warning:#8a5806;--warning-soft:#fbf0d9;--nav-bg:#16324b;--nav-bg-raised:#22455f;--nav-ink:#e6edef;--nav-ink-soft:#b0c2ce;--nav-ink-strong:#f3f7f6;--nav-accent:#62cfc0;--nav-line:#e2f2f02e;--nav-color-hoy:#62cfc0;--nav-color-gastos:#3b82f6;--nav-color-recurrentes:#f97316;--nav-color-resumen:#a855f7;--nav-color-presupuestos:#22c55e;--nav-color-ajustes:#94a3b8;--nav-surface:var(--surface);--nav-ink-on-accent:var(--ink-on-accent);--focus-ring:#0a7a74;--focus-width:3px;--selection-bg:#cfe8e4;--selection-ink:#0e2438;--shadow-color:#10283c1a;--scrim:#10283c7a;--scrollbar-thumb:#b7c7c4;--scrollbar-thumb-hover:#93aaa6;--radius-panel:.875rem;--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0f1519;--surface:#161e24;--surface-raised:#1d272e;--surface-sunken:#121a1f;--ink:#dde6ec;--ink-strong:#f0f5f8;--ink-soft:#b6c5cf;--ink-muted:#9babb7;--ink-faint:#8698a5;--ink-on-accent:#05221e;--line:#29363f;--line-strong:#3a4a56;--line-soft:#202b32;--track:#202b32;--accent:#45c9bc;--accent-strong:#6ad9cd;--accent-soft:#10312f;--accent-bright:#45c9bc;--positive:#52c191;--positive-soft:#10291f;--negative:#f08b92;--negative-soft:#2c171a;--negative-ink:#2c171a;--warning:#e0ae5c;--warning-soft:#2b2113;--nav-bg:#0a0f13;--nav-bg-raised:#16212a;--nav-ink:#ccd8e0;--nav-ink-soft:#8fa2b0;--nav-ink-strong:#eaf1f5;--nav-accent:#45c9bc;--nav-line:#bed6de29;--nav-color-hoy:#45c9bc;--nav-color-gastos:#3b82f6;--nav-color-recurrentes:#f97316;--nav-color-resumen:#a855f7;--nav-color-presupuestos:#22c55e;--nav-color-ajustes:#94a3b8;--nav-surface:var(--surface);--nav-ink-on-accent:var(--ink-on-accent);--focus-ring:#45c9bc;--selection-bg:#1d3b3a;--selection-ink:#dde6ec;--shadow-color:#0000008c;--scrim:#000000a6;--scrollbar-thumb:#37474f;--scrollbar-thumb-hover:#4b5f69}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0f1519;--surface:#161e24;--surface-raised:#1d272e;--surface-sunken:#121a1f;--ink:#dde6ec;--ink-strong:#f0f5f8;--ink-soft:#b6c5cf;--ink-muted:#9babb7;--ink-faint:#8698a5;--ink-on-accent:#05221e;--line:#29363f;--line-strong:#3a4a56;--line-soft:#202b32;--track:#202b32;--accent:#45c9bc;--accent-strong:#6ad9cd;--accent-soft:#10312f;--accent-bright:#45c9bc;--positive:#52c191;--positive-soft:#10291f;--negative:#f08b92;--negative-soft:#2c171a;--negative-ink:#2c171a;--warning:#e0ae5c;--warning-soft:#2b2113;--nav-bg:#0a0f13;--nav-bg-raised:#16212a;--nav-ink:#ccd8e0;--nav-ink-soft:#8fa2b0;--nav-ink-strong:#eaf1f5;--nav-accent:#45c9bc;--nav-line:#bed6de29;--nav-color-hoy:#45c9bc;--nav-color-gastos:#3b82f6;--nav-color-recurrentes:#f97316;--nav-color-resumen:#a855f7;--nav-color-presupuestos:#22c55e;--nav-color-ajustes:#94a3b8;--nav-surface:var(--surface);--nav-ink-on-accent:var(--ink-on-accent);--focus-ring:#45c9bc;--selection-bg:#1d3b3a;--selection-ink:#dde6ec;--shadow-color:#0000008c;--scrim:#000000a6;--scrollbar-thumb:#37474f;--scrollbar-thumb-hover:#4b5f69}[data-theme=sepia]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#ece1cf;--surface:#f9f2e5;--surface-raised:#fdf9f0;--surface-sunken:#ece2d0;--ink:#3c3122;--ink-strong:#2a2115;--ink-soft:#574733;--ink-muted:#6b5942;--ink-faint:#75634c;--ink-on-accent:#fff;--line:#d5c5ab;--line-strong:#bda98c;--line-soft:#e6d9c2;--track:#e6d9c2;--accent:#0e6d64;--accent-strong:#095851;--accent-soft:#dbe8e1;--accent-bright:#12897d;--positive:#34612f;--positive-soft:#e3ebd7;--negative:#99301f;--negative-soft:#f4ded4;--negative-ink:#f4ded4;--warning:#8a5810;--warning-soft:#f2e3c3;--nav-bg:#3a2f21;--nav-bg-raised:#4d3f2c;--nav-ink:#ece0cd;--nav-ink-soft:#c1b193;--nav-ink-strong:#f8f0e1;--nav-accent:#7ec9b8;--nav-line:#f0e2c82e;--nav-color-hoy:#7ec9b8;--nav-color-gastos:#0e6d64;--nav-color-recurrentes:#8a5810;--nav-color-resumen:#6b46c1;--nav-color-presupuestos:#34612f;--nav-color-ajustes:#94a3b8;--nav-surface:var(--surface);--nav-ink-on-accent:var(--ink-on-accent);--focus-ring:#0e6d64;--selection-bg:#dfe9d9;--selection-ink:#2a2115;--shadow-color:#4a381e24;--scrim:#4a381e80;--scrollbar-thumb:#c6b291;--scrollbar-thumb-hover:#ab9673}[data-theme=contrast]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#fff;--surface:#fff;--surface-raised:#fff;--surface-sunken:#f0f0f0;--ink:#000;--ink-strong:#000;--ink-soft:#1c1c1c;--ink-muted:#2e2e2e;--ink-faint:#3d3d3d;--ink-on-accent:#fff;--line:#000;--line-strong:#000;--line-soft:#6a6a6a;--track:#d0d0d0;--accent:#00504b;--accent-strong:#00332f;--accent-soft:#d3e9e7;--accent-bright:#00504b;--positive:#0f4d29;--positive-soft:#d9f0e2;--negative:#8a0018;--negative-soft:#fbdce0;--negative-ink:#fbdce0;--warning:#6a4100;--warning-soft:#fbeacb;--nav-bg:#000;--nav-bg-raised:#1a1a1a;--nav-ink:#fff;--nav-ink-soft:#e6e6e6;--nav-ink-strong:#fff;--nav-accent:#5fe0d2;--nav-line:#ffffff73;--nav-color-hoy:#5fe0d2;--nav-color-gastos:#00504b;--nav-color-recurrentes:#6a4100;--nav-color-resumen:#0f4d29;--nav-color-presupuestos:#00504b;--nav-color-ajustes:#6a6a6a;--nav-surface:var(--surface);--nav-ink-on-accent:var(--ink-on-accent);--focus-ring:#000;--focus-width:4px;--selection-bg:#ffd94d;--selection-ink:#000;--shadow-color:#0000004d;--scrim:#000000bf;--scrollbar-thumb:#6a6a6a;--scrollbar-thumb-hover:#3d3d3d}:root{background:var(--canvas);color:var(--ink);font-variant-numeric:tabular-nums;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin;min-width:320px;min-height:100%}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:content-box}body{background:var(--canvas);min-height:100vh;color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}input,textarea,select{caret-color:var(--ink)}::selection{background:var(--selection-bg);color:var(--selection-ink)}:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 3px var(--accent-soft)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-frame{min-height:100vh}.desktop-sidebar{z-index:20;background:var(--nav-bg);width:250px;color:var(--nav-ink-strong);flex-direction:column;padding:25px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand-lockup{width:fit-content;color:inherit;align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--nav-line);background:var(--nav-bg-raised);width:38px;height:38px;color:var(--nav-accent);border-radius:11px;place-items:center;display:grid}.brand-name{letter-spacing:-.025em;font-size:17px;font-weight:720}.sidebar-caption{color:var(--nav-ink-soft);letter-spacing:.1em;margin:43px 10px 11px;font-size:10px;font-weight:700}.side-navigation,.bottom-navigation{display:flex}.side-navigation{flex-direction:column;gap:4px}.navigation-link{min-height:48px;color:var(--nav-ink);border-radius:10px;align-items:center;gap:12px;font-size:14px;font-weight:560;text-decoration:none;transition:background-color .16s ease-out,color .16s ease-out;display:flex;position:relative}.side-navigation .navigation-link{padding:0 12px 0 14px}.navigation-link-icon{background:var(--nav-item-color);border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.navigation-link-icon{background:color-mix(in srgb, var(--nav-item-color) 12%, var(--nav-surface))}}.navigation-link-icon{color:var(--nav-item-color);transition:background-color .16s ease-out,color .16s ease-out,transform .15s ease-out,box-shadow .16s ease-out}.side-navigation .navigation-link:hover{background:var(--nav-bg-raised);color:var(--nav-ink-strong)}.side-navigation .navigation-link:hover .navigation-link-icon{background:var(--nav-item-color)}@supports (color:color-mix(in lab, red, red)){.side-navigation .navigation-link:hover .navigation-link-icon{background:color-mix(in srgb, var(--nav-item-color) 18%, var(--nav-surface))}}.side-navigation .navigation-link:hover .navigation-link-icon{color:var(--nav-item-color);box-shadow:0 0 0 2px var(--nav-item-color);transform:scale(1.05)}@supports (color:color-mix(in lab, red, red)){.side-navigation .navigation-link:hover .navigation-link-icon{box-shadow:0 0 0 2px color-mix(in srgb, var(--nav-item-color) 25%, transparent)}}.side-navigation .navigation-link:focus-visible{box-shadow:inset 2px 0 0 var(--nav-accent);outline:none}.side-navigation .navigation-link-current{background:var(--nav-bg-raised);color:var(--nav-ink-strong)}.side-navigation .navigation-link-current .navigation-link-icon{background:var(--nav-item-color);color:var(--nav-ink-on-accent);box-shadow:0 0 0 2px var(--nav-item-color)}.side-navigation .navigation-link-current:hover .navigation-link-icon{box-shadow:0 0 0 2px var(--nav-item-color);transform:none}.navigation-link-indicator{background:var(--nav-item-color);border-radius:0 3px 3px 0;width:3px;height:28px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.navigation-link-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-bottom{border-top:1px solid var(--nav-line);flex-direction:column;align-items:stretch;gap:10px;margin-top:auto;padding:16px 12px 8px;display:flex}.sidebar-profile{border-radius:10px;align-items:center;gap:10px;padding:8px 4px;transition:background-color .15s ease-out;display:flex}.sidebar-profile:hover{background:var(--nav-bg-raised)}.sidebar-profile-avatar{flex-shrink:0}.sidebar-profile-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sidebar-profile-name{color:var(--nav-ink-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.sidebar-profile-household{color:var(--nav-ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.sidebar-divider{background:var(--nav-line);height:1px;margin:4px 0}.logout-button{border:1px solid var(--nav-line);min-height:36px;color:var(--nav-ink-soft);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:600;transition:border-color .15s ease-out,color .15s ease-out,background-color .15s ease-out;display:flex}.logout-button:hover:not(:disabled){border-color:var(--negative);color:var(--negative);background:var(--negative-soft)}.logout-button:focus-visible{box-shadow:0 0 0 2px var(--negative);outline:none}.connection-dot,.household-indicator-dot{background:var(--positive);border-radius:50%;flex:none;width:8px;height:8px}.main-column{width:min(100% - 250px,1510px);min-height:100vh;margin-left:250px;padding:47px clamp(30px,4.3vw,68px) 104px}.global-header{justify-content:space-between;align-items:center;gap:24px;min-height:92px;margin-bottom:31px;display:flex}.global-header-left{flex:1;min-width:0}.global-header-left h1{color:var(--ink);letter-spacing:-.035em;margin:0;font-size:clamp(28px,3vw,38px);font-weight:720;line-height:1.13}.global-header-left .page-description{max-width:66ch;color:var(--ink-muted);margin:8px 0 0;font-size:15px;line-height:1.55}.global-header-right{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.user-context{border:1px solid var(--line);background:var(--surface);min-height:56px;color:var(--ink-soft);border-radius:12px;align-items:center;gap:12px;padding:0 16px;text-decoration:none;transition:border-color .15s ease-out,background .15s ease-out;display:inline-flex}.user-context:hover{border-color:var(--line-strong);background:var(--surface-sunken)}.user-context:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.user-context-block{flex-direction:column;gap:3px;min-width:0;display:flex}.user-context-label{color:var(--ink-muted);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:680}.user-context-name{color:var(--ink);letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:650;overflow:hidden}.user-context-household{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.user-context-divider{background:var(--line-strong);border-radius:1px;flex:none;width:1px;height:34px}.page-description{max-width:66ch;color:var(--ink-muted);margin:10px 0 0;font-size:15px;line-height:1.55}.member-avatar{background:var(--surface-sunken);color:#fff;letter-spacing:-.02em;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;font-weight:680;line-height:1;display:inline-grid;overflow:hidden}.member-avatar img{object-fit:cover;width:100%;height:100%}.member-avatar.has-photo{background:var(--line-soft)}.sync-status{border:1px solid var(--line);background:var(--surface);max-width:100%;min-height:56px;color:var(--ink-soft);border-radius:12px;align-items:center;gap:11px;padding:0 14px;font-size:12.5px;font-weight:600;display:inline-flex}.sync-status-icon{background:var(--positive);border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}@supports (color:color-mix(in lab, red, red)){.sync-status-icon{background:color-mix(in srgb, var(--positive) 15%, var(--surface))}}.sync-status-dot{background:var(--positive);border-radius:50%;flex:none;width:9px;height:9px}.sync-status-copy{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sync-state-offline .sync-status-dot,.sync-state-pending .sync-status-dot,.sync-state-offline .sync-status-icon,.sync-state-pending .sync-status-icon{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.sync-state-offline .sync-status-icon,.sync-state-pending .sync-status-icon{background:color-mix(in srgb, var(--warning) 18%, var(--surface))}}.sync-state-error .sync-status-dot,.sync-state-error .sync-status-icon{background:var(--negative)}@supports (color:color-mix(in lab, red, red)){.sync-state-error .sync-status-icon{background:color-mix(in srgb, var(--negative) 15%, var(--surface))}}.sync-state-syncing .sync-status-dot{background:var(--accent);animation:1.2s ease-in-out infinite alternate sync-pulse}.sync-state-syncing .sync-status-icon{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.sync-state-syncing .sync-status-icon{background:color-mix(in srgb, var(--accent) 16%, var(--surface))}}.sync-now-button{border:1px solid var(--line-strong);background:var(--surface);min-height:30px;color:var(--accent-strong);cursor:pointer;border-radius:8px;flex:none;padding:0 10px;font-size:11px;font-weight:650}.sync-now-button:disabled{cursor:wait;opacity:.6}@keyframes sync-pulse{to{opacity:.45}}.first-household-panel{border:1px solid var(--line);background:var(--surface);border-radius:15px;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);align-items:center;gap:clamp(24px,5vw,68px);padding:clamp(25px,4.1vw,52px);display:grid}.first-household-copy{max-width:490px}.setup-mark{background:var(--accent-soft);width:46px;height:46px;color:var(--accent-strong);border-radius:12px;place-items:center;margin-bottom:21px;display:grid}.first-household-copy h2{max-width:13ch;color:var(--ink);letter-spacing:-.03em;margin:0;font-size:clamp(24px,2.5vw,31px);font-weight:700;line-height:1.18}.first-household-copy>p{max-width:49ch;color:var(--ink-muted);margin:14px 0 23px;font-size:15px;line-height:1.62}.primary-action{background:var(--accent);min-height:48px;color:var(--ink-on-accent);border-radius:10px;justify-content:center;align-items:center;gap:11px;padding:0 17px;font-size:14px;font-weight:680;text-decoration:none;transition:background-color .15s ease-out,transform .15s ease-out;display:inline-flex}.primary-action:hover{background:var(--accent-strong);transform:translateY(-1px)}.period-preview{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:12px;min-width:0;padding:22px 21px 17px}.period-preview-heading{color:var(--accent);justify-content:space-between;align-items:center;display:flex}.period-preview-heading h2{color:var(--ink);letter-spacing:-.015em;margin:0;font-size:17px;font-weight:680}.period-values{grid-template-columns:1fr 1fr;gap:15px;margin-top:21px;display:grid}.period-values>div{flex-direction:column;gap:6px;min-width:0;display:flex}.period-values span{color:var(--ink-muted);font-size:12px}.period-values strong{color:var(--ink);letter-spacing:-.025em;font-size:26px;font-weight:700}.period-rule{background:var(--track);height:1px;margin:18px 0 12px}.period-preview>p{color:var(--ink-muted);margin:0;font-size:12px;line-height:1.45}.period-types{flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}.period-types span{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);border-radius:6px;padding:5px 8px;font-size:10px;font-weight:630}.financial-summary-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.financial-summary-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;min-height:140px;padding:20px;transition:border-color .15s ease-out,box-shadow .15s ease-out,transform .15s ease-out;display:flex}.financial-summary-card:hover{border-color:var(--line-strong);box-shadow:0 4px 16px var(--shadow-color);transform:translateY(-2px)}.financial-card-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.financial-card-label{color:var(--ink-muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:600}.financial-card-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.financial-card-value{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:auto;margin-bottom:8px;font-size:28px;font-weight:720;line-height:1.2}.financial-card-trend{align-items:baseline;gap:6px;margin-top:auto;font-size:12px;font-weight:600;display:flex}.trend-positive{color:var(--negative)}.trend-negative{color:var(--positive)}.trend-value{font-variant-numeric:tabular-nums}.trend-label{color:var(--ink-muted);font-size:11px;font-weight:500}.financial-card-budget{margin-top:12px}.budget-bar{background:var(--track);border-radius:3px;height:6px;overflow:hidden}.budget-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .4s ease-out,background .2s ease-out}.budget-fill[style*="100%"],.budget-fill[style*="100"]{background:var(--negative)}.budget-text{color:var(--ink-muted);margin-top:6px;font-size:11px;font-weight:500;display:block}@media (max-width:820px){.financial-summary-grid{grid-template-columns:1fr;gap:12px}.financial-card-value{font-size:24px}}.today-content{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start;gap:22px;display:grid}.month-dashboard{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:14px;min-width:0;padding:24px}.month-dashboard-header{color:var(--accent);justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.month-dashboard-header h2{color:var(--ink);letter-spacing:-.015em;margin:0;font-size:18px;font-weight:680}.month-dashboard-caption{color:var(--ink-muted);margin:4px 0 0;font-size:11px}.month-dashboard-icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.month-dashboard-main{flex-direction:column;gap:16px;display:flex}.month-main-value{flex-direction:column;gap:4px;display:flex}.month-main-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.month-main-amount{color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:32px;font-weight:720;line-height:1.1}.month-comparison{border-top:1px solid var(--line-soft);flex-direction:column;gap:8px;padding-top:8px;display:flex}.month-comparison-bar{background:var(--track);border-radius:4px;height:8px;overflow:hidden}.month-comparison-fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .4s ease-out}.month-comparison-text{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.month-trend{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:14px;font-weight:650;display:inline-flex}.month-trend.trend-up{color:var(--negative)}.month-trend.trend-down{color:var(--positive)}.month-trend.trend-flat{color:var(--ink-muted)}.month-trend-label{color:var(--ink-muted);font-size:12px;font-weight:500}.month-diff{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.month-no-data{color:var(--ink-muted);margin:0;font-size:12px;line-height:1.45}.month-no-data-first{border:1px solid var(--line-soft);background:var(--surface-sunken);color:var(--ink-soft);text-align:center;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.month-no-data-first>span:first-child{color:var(--ink);font-weight:600}.month-dashboard-periods{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.month-dashboard-periods .period-btn{border:1px solid var(--line-strong);background:var(--surface);min-width:0;color:var(--ink-soft);cursor:pointer;border-radius:8px;flex:auto;justify-content:center;align-items:center;padding:8px 10px;font-size:11px;font-weight:600;text-decoration:none;transition:border-color .15s ease-out,background .15s ease-out,color .15s ease-out,transform .1s ease-out,box-shadow .15s ease-out;display:inline-flex}.month-dashboard-periods .period-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);transform:translateY(-1px)}.month-dashboard-periods .period-btn:active{transform:scale(.97)}.month-dashboard-periods .period-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.month-dashboard-periods .period-btn.is-active{border-color:var(--accent);background:var(--accent);color:var(--ink-on-accent)}.month-dashboard-periods .period-btn.is-active:hover{background:var(--accent-strong);color:var(--ink-on-accent)}@media (max-width:1050px){.today-content{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:16px}.today-primary{padding:20px}}@media (max-width:820px){.today-kpis{margin-bottom:8px}.today-content{grid-template-columns:minmax(0,1fr);gap:17px}.today-primary{padding:20px}}.empty-expenses{border-top:1px solid var(--line);align-items:flex-start;gap:18px;margin-top:27px;padding:24px 4px 7px;display:flex}.empty-expenses-rule{background:var(--accent-bright);border-radius:2px;flex:none;width:3px;height:46px}.empty-expenses h2{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:16px;font-weight:670}.empty-expenses p{color:var(--ink-muted);margin:7px 0 0;font-size:13px;line-height:1.55}.mobile-topbar,.mobile-bottom-wrap{display:none}.mobile-settings{border:1px solid var(--nav-line);width:40px;height:40px;color:var(--nav-ink-strong);background:0 0;border-radius:10px;place-items:center;text-decoration:none;display:grid}.mobile-account-actions{align-items:center;gap:8px;display:flex}.mobile-logout-button{min-height:40px;color:var(--nav-ink-strong);padding:0 5px;font-size:11px}.auth-page{min-height:100vh;padding:0 24px 56px}.auth-brand-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:78px;display:flex}.auth-brand-bar .brand-lockup{color:var(--ink)}.auth-brand-bar .brand-mark{border-color:var(--line-strong);background:var(--surface-sunken);color:var(--accent)}.auth-brand-note{color:var(--ink-muted);font-size:12px}.auth-content{place-items:center;min-height:calc(100vh - 135px);padding:36px 0 0;display:grid}.auth-panel{border:1px solid var(--line);background:var(--surface);border-radius:15px;width:min(100%,500px);padding:clamp(25px,5vw,42px)}.auth-mark{background:var(--accent-soft);width:46px;height:46px;color:var(--accent-strong);border-radius:12px;place-items:center;margin-bottom:20px;display:grid}.auth-mark-complete{background:var(--positive-soft);color:var(--positive)}.auth-panel h1{color:var(--ink);letter-spacing:-.035em;margin:0;font-size:clamp(26px,4vw,32px);font-weight:710;line-height:1.16}.auth-intro{color:var(--ink-muted);margin:10px 0 25px;font-size:14px;line-height:1.6}.auth-form{flex-direction:column;gap:9px;display:flex}.auth-form label{color:var(--ink);margin-top:8px;font-size:13px;font-weight:650}.auth-form input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:47px;color:var(--ink);border-radius:9px;outline:none;padding:0 13px;font-size:15px;transition:border-color .14s ease-out,box-shadow .14s ease-out}.auth-form input::placeholder{color:var(--ink-faint);opacity:1}.auth-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.pin-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pin-fields>div{flex-direction:column;gap:9px;min-width:0;display:flex}.form-error{color:var(--negative);margin:4px 0 0;font-size:13px;line-height:1.45}.auth-submit{background:var(--accent);width:100%;min-height:49px;color:var(--ink-on-accent);cursor:pointer;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:0 16px;font-size:14px;font-weight:680;transition:background-color .15s ease-out;display:flex}.auth-link-submit{text-decoration:none}.auth-submit:hover:not(:disabled){background:var(--accent-strong)}.auth-submit:disabled{cursor:wait;opacity:.72}.auth-footer-copy{color:var(--ink-muted);margin:20px 0 0;font-size:12px;line-height:1.6}.auth-footer-copy a{color:var(--accent-strong);text-underline-offset:3px;font-weight:660}.invite-code-panel{border:1px solid var(--line-strong);background:var(--surface-sunken);border-radius:11px;flex-direction:column;align-items:flex-start;gap:9px;margin:25px 0 19px;padding:18px;display:flex}.invite-code-panel>span{color:var(--ink-muted);letter-spacing:.09em;font-size:10px;font-weight:710}.invite-code-panel strong{color:var(--ink);letter-spacing:.13em;overflow-wrap:anywhere;font-size:clamp(22px,6vw,29px);font-weight:740}.secondary-action{border:1px solid var(--line-strong);background:var(--surface);min-height:38px;color:var(--accent-strong);cursor:pointer;border-radius:8px;margin-top:3px;padding:0 12px;font-size:12px;font-weight:650}.today-layout{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start;gap:22px;display:grid}.today-kpis{grid-column:1/-1}.today-content{grid-column:1/-1;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);align-items:start;gap:24px;width:100%;display:grid}@media (max-width:1180px){.today-content{grid-template-columns:minmax(0,1fr);gap:18px}.global-header{flex-wrap:wrap;row-gap:16px}.global-header-left{flex:320px}}.today-primary{border:1px solid var(--line);background:var(--surface);border-radius:15px;min-width:0;padding:24px}.quick-expense-form{flex-direction:column;width:100%;display:flex}.quick-expense-form>*{width:100%}.quick-form-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.quick-form-heading h2,.today-list-heading h2{color:var(--ink);letter-spacing:-.025em;margin:0;font-size:20px;font-weight:700}.quick-form-heading p,.today-list-heading p{color:var(--ink-muted);margin:6px 0 0;font-size:12px;line-height:1.45}.current-member-pill{border:1px solid var(--line);max-width:150px;min-height:31px;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:620;display:inline-flex;overflow:hidden}.current-member-pill svg{color:var(--accent);flex:none}.amount-label{color:var(--ink);margin-bottom:8px;font-size:13px;font-weight:650}.amount-input-wrap{border:1px solid var(--line-strong);background:var(--surface-raised);min-height:68px;color:var(--accent);border-radius:11px;align-items:center;gap:9px;padding:0 15px;transition:border-color .14s ease-out,box-shadow .14s ease-out;display:flex}.amount-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.amount-input-wrap>span:first-child{align-self:flex-start;margin-top:17px;font-size:20px;font-weight:650}.amount-input-wrap input{width:100%;min-width:0;color:var(--ink);letter-spacing:-.045em;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;font-size:35px;font-weight:720}.amount-input-wrap input::placeholder{color:var(--ink-faint);opacity:1}.currency-code{color:var(--ink-muted);letter-spacing:.08em;align-self:flex-start;margin-top:26px;font-size:10px;font-weight:700}.category-fieldset{border:0;min-width:0;margin:16px 0 0;padding:0}.category-fieldset legend,.expense-details-row label,.note-label{color:var(--ink);margin-bottom:8px;font-size:13px;font-weight:650}.category-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}@media (max-width:720px){.category-options{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:560px){.category-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.category-option{border:2px solid var(--line);background:var(--surface);min-width:0;min-height:80px;color:var(--ink-soft);cursor:pointer;text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px 10px;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out,transform .1s ease-out,box-shadow .15s ease-out;display:flex;position:relative}.category-option:hover{border-color:var(--category-color);background:var(--surface-sunken);color:var(--ink);box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-1px)}.category-option:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft), 0 4px 12px var(--shadow-color);outline:none}.category-option-selected{border-color:var(--category-color);background:var(--category-color)}@supports (color:color-mix(in lab, red, red)){.category-option-selected{background:color-mix(in srgb, var(--category-color) 12%, var(--surface))}}.category-option-selected{color:var(--ink);box-shadow:0 0 0 2px var(--category-color), 0 2px 8px var(--shadow-color)}.category-option-selected:hover{box-shadow:0 0 0 2px var(--category-color), 0 6px 16px var(--shadow-color);transform:translateY(-1px)}.category-option-icon{background:var(--category-color);border-radius:8px;place-items:center;width:28px;height:28px;display:grid}@supports (color:color-mix(in lab, red, red)){.category-option-icon{background:color-mix(in srgb, var(--category-color) 16%, var(--surface))}}.category-option-icon{color:var(--category-color);transition:transform .15s ease-out,background .15s ease-out}.category-option-selected .category-option-icon{background:var(--category-color);color:var(--ink-on-accent);transform:scale(1.05)}.category-option-name{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;width:100%;font-size:clamp(9px,1.8vw,11px);font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.category-option-check{background:var(--category-color);width:20px;height:20px;color:var(--ink-on-accent);opacity:0;border-radius:50%;place-items:center;transition:opacity .15s ease-out,transform .15s cubic-bezier(.34,1.56,.64,1);display:grid;position:absolute;top:8px;right:8px;transform:scale(.6)}.category-option-selected .category-option-check{opacity:1;transform:scale(1)}.expense-details-row{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.expense-extra-details{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:10px;margin-top:12px;overflow:hidden}.expense-extra-details summary{min-height:48px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:13px;font-weight:600;list-style:none;transition:background-color .15s ease-out;display:flex}.expense-extra-details summary::-webkit-details-marker{display:none}.expense-extra-details summary:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.expense-extra-details summary:hover{background:color-mix(in srgb, var(--accent) 6%, var(--surface-sunken))}}.expense-extra-details summary:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.expense-details-summary-value{color:var(--ink-muted);align-items:center;gap:9px;font-size:11px;font-weight:500;display:inline-flex}.expense-details-summary-value:after{border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);content:"";width:7px;height:7px;transition:transform .2s ease-out;transform:rotate(45deg)translateY(-2px)}.expense-extra-details[open] .expense-details-summary-value:after{transform:rotate(225deg)translate(-1px,-1px)}.expense-more-content{grid-template-columns:1fr;gap:16px;padding:0 14px 16px;animation:.25s ease-out accordion-down;display:grid}@media (min-width:560px){.expense-more-content{grid-template-columns:1fr 1fr}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}.expense-details-inline{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:10px;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;padding:16px;display:grid}.expense-details-inline .expense-details-row{display:contents}.expense-details-inline .expense-details-row>div{flex-direction:column;gap:6px;display:flex}.expense-details-inline label{color:var(--ink);font-size:12px;font-weight:600}.expense-details-inline input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:44px;color:var(--ink);border-radius:8px;padding:0 12px;font-size:13px;transition:border-color .14s ease-out,box-shadow .14s ease-out}.expense-details-inline input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}@media (max-width:560px){.expense-details-inline{grid-template-columns:1fr}}.expense-details-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.expense-details-row>div{flex-direction:column;gap:6px;min-width:0;display:flex}.expense-details-row label{color:var(--ink);font-size:12px;font-weight:600}.expense-details-row input,.note-input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);border-radius:8px;padding:0 12px;font-size:13px;transition:border-color .14s ease-out,box-shadow .14s ease-out}.expense-details-row input:focus,.note-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.note-label{color:var(--ink);align-items:center;gap:6px;margin-top:4px;font-size:12px;font-weight:600;display:flex}.note-label span{color:var(--ink-faint);font-size:11px;font-weight:500}.note-field,.payment-field{flex-direction:column;gap:6px;width:100%;display:flex}.note-field .note-label,.payment-field .note-label{margin-top:0}.note-textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:80px;color:var(--ink);resize:vertical;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .14s ease-out,box-shadow .14s ease-out}.note-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.note-textarea::placeholder{color:var(--ink-muted)}.receipt-field{flex-direction:column;gap:8px;width:100%;display:flex}.receipt-capture{border-top:1px solid var(--line-soft);margin-top:2px}.visually-hidden-input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.receipt-add-button{width:100%;min-height:44px;color:var(--accent-strong);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0;font-size:12px;font-weight:630;display:flex}.receipt-add-button:disabled{cursor:wait;opacity:.65}.optional-label{color:var(--ink-faint);margin-left:auto;font-size:11px;font-weight:500}.receipt-preview-row{align-items:center;gap:10px;min-width:0;padding:9px 0;display:flex}.receipt-preview-image{border:1px solid var(--line-strong);object-fit:cover;border-radius:7px;flex:none;width:42px;height:42px}.receipt-preview-label{color:var(--ink-soft);flex:auto;font-size:11px}.receipt-remove,.receipt-retry-button{border:1px solid var(--line-strong);background:var(--surface);min-height:34px;color:var(--ink-soft);cursor:pointer;border-radius:7px;padding:0 9px;font-size:11px;font-weight:620}.receipt-remove:disabled,.receipt-retry-button:disabled{cursor:wait;opacity:.65}.receipt-retry-button{border-color:var(--warning-soft);background:var(--warning-soft);color:var(--warning);margin-bottom:10px}.expense-submit{background:var(--accent);width:100%;min-height:49px;color:var(--ink-on-accent);cursor:pointer;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;margin-top:18px;padding:0 15px;font-size:13px;font-weight:680;transition:background-color .14s ease-out;display:flex}.expense-submit:hover:not(:disabled){background:var(--accent-strong)}.expense-submit:disabled{cursor:not-allowed;opacity:.62}.form-success{color:var(--positive);margin:8px 0 0;font-size:13px;line-height:1.45}.spinner{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{border-radius:10px;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;font-size:13px;font-weight:550;animation:.25s ease-out toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.toast-success{background:var(--positive-soft);color:var(--positive);border:1px solid var(--positive)}.toast-error{background:var(--negative-soft);color:var(--negative);border:1px solid var(--negative)}.toast svg{flex-shrink:0}.today-rail{flex-direction:column;gap:24px;min-width:0;display:flex}.period-preview-heading>div>p{color:var(--ink-muted);margin:5px 0 0;font-size:11px}.period-icon{background:var(--accent-soft);width:35px;height:35px;color:var(--accent);border-radius:9px;place-items:center;display:grid}.period-comparison-line{background:var(--track);border-radius:4px;gap:4px;height:6px;margin:17px 0 11px;display:flex;overflow:hidden}.period-comparison-line span:first-child{border-radius:inherit;background:var(--accent-bright);width:58%}.period-comparison-line span:last-child{border-radius:inherit;background:var(--warning);width:34%}.today-list-section{padding:24px}.today-list-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:16px;display:flex}.today-list-heading h2{font-size:17px}.today-list-heading>strong{color:var(--ink);white-space:nowrap;font-size:17px;font-weight:710}.today-expense-list{margin:0;padding:0;list-style:none}.today-expense-row{border-bottom:1px solid var(--line-soft);cursor:pointer;border-radius:8px;align-items:center;gap:12px;min-width:0;margin:0 -4px;padding:14px 4px;transition:background-color .15s ease-out,padding-left .15s ease-out;display:flex}.today-expense-row:hover{background:var(--surface-sunken);padding-left:8px}.today-expense-row:last-child{border-bottom:0}.today-expense-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.expense-category-mark{background:var(--category-color);border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.expense-category-mark{background:color-mix(in srgb, var(--category-color) 12%, var(--surface))}}.expense-category-mark{color:var(--category-color);transition:transform .15s ease-out}.today-expense-row:hover .expense-category-mark{transform:scale(1.05)}.expense-category-mark-sm{border-radius:8px;width:28px;height:28px}.expense-category-mark-xs{border-radius:6px;width:22px;height:22px}.expense-row-main{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.expense-row-main strong{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:660;line-height:1.3;display:-webkit-box;overflow:hidden}.expense-row-main>span{color:var(--ink-muted);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.expense-row-amount{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.02em;flex:none;font-size:16px;font-weight:720}.expense-row-actions{opacity:0;flex:none;align-items:center;gap:6px;transition:opacity .15s ease-out;display:flex}.today-expense-row:hover .expense-row-actions,.today-expense-row:focus-within .expense-row-actions{opacity:1}.expense-edit-button{border:1px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--ink-soft);cursor:pointer;border-radius:8px;place-items:center;transition:border-color .15s ease-out,background .15s ease-out,color .15s ease-out,transform .1s ease-out;display:grid}.expense-edit-button:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);transform:translate(2px)}.expense-edit-button:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.today-total-amount{font-variant-numeric:tabular-nums;color:var(--ink);font-size:18px;font-weight:710}.expense-receipt-link{border:1px solid var(--line-strong);border-radius:7px;flex:none;width:38px;height:38px;display:block;overflow:hidden}.expense-receipt-link img{object-fit:cover;width:100%;height:100%;display:block}.today-empty-state{align-items:flex-start;gap:13px;padding:19px 0;display:flex}.today-empty-line{background:var(--accent-bright);border-radius:2px;flex:none;width:3px;height:39px}.today-empty-state h3{color:var(--ink);margin:0;font-size:13px;font-weight:670}.today-empty-state p{color:var(--ink-muted);margin:5px 0 0;font-size:11px;line-height:1.5}.expense-pending-label{border:1px solid var(--warning-soft);background:var(--warning-soft);color:var(--warning);border-radius:6px;flex:none;padding:4px 6px;font-size:9px;font-weight:650}.settings-household-code{border:1px solid var(--line-strong);background:var(--surface-sunken);border-radius:12px;justify-content:space-between;align-items:center;gap:24px;padding:18px 20px;display:flex}.settings-household-code h2{color:var(--ink);margin:0;font-size:15px;font-weight:690}.settings-household-code p{color:var(--ink-muted);margin:5px 0 0;font-size:12px;line-height:1.5}.settings-household-code>strong{color:var(--ink);letter-spacing:.1em;flex:none;font-size:clamp(17px,2vw,22px);font-weight:730}.household-settings-panel,.profile-settings-panel{border:1px solid var(--line);background:var(--surface);border-radius:13px;margin-bottom:18px;padding:18px 20px}.profile-identity{flex-wrap:wrap;align-items:center;gap:15px;margin-top:15px;display:flex}.profile-identity-copy{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.profile-identity-copy strong{color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:680}.profile-identity-copy span{color:var(--ink-muted);font-size:12px}.profile-avatar-actions{flex-wrap:wrap;gap:8px;display:flex}.profile-avatar-input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.household-code-inline{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:9px;align-items:center;gap:12px;margin-top:14px;padding:11px 12px;display:flex}.household-code-inline strong{color:var(--ink);letter-spacing:.12em;overflow-wrap:anywhere;flex:auto;font-size:18px;font-weight:720}.household-preferences-form{grid-template-columns:minmax(180px,1fr) minmax(170px,.75fr) auto;align-items:end;gap:11px;margin-top:15px;display:grid}.household-preferences-form>div{flex-direction:column;gap:6px;min-width:0;display:flex}.household-preferences-form label{color:var(--ink-soft);font-size:11px;font-weight:650}.household-preferences-form input,.household-preferences-form select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.household-preferences-form button{white-space:nowrap;min-height:40px}.members-manager{grid-template-columns:minmax(0,1fr) minmax(270px,.7fr);align-items:start;gap:20px;margin-top:20px;display:grid}.members-list-panel,.add-member-panel{border:1px solid var(--line);background:var(--surface);border-radius:13px;min-width:0;padding:20px}.settings-section-heading h2,.add-member-panel h2{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:700}.settings-section-heading p,.add-member-panel>p{color:var(--ink-muted);margin:6px 0 0;font-size:12px;line-height:1.5}.settings-member-list{margin:16px 0 0;padding:0;list-style:none}.settings-member-list li{border-top:1px solid var(--line-soft);align-items:center;gap:11px;min-height:51px;display:flex}.settings-member-name{color:var(--ink);flex:auto;font-size:13px;font-weight:620}.member-role-label{color:var(--ink-muted);font-size:11px}.settings-member-list li:has(.invite-code-row){flex-wrap:wrap;padding-bottom:11px}.invite-badge{background:var(--warning-soft);color:var(--warning);letter-spacing:.01em;white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:660}.invite-badge-expired{background:var(--surface-sunken);color:var(--ink-faint)}.invite-code-row{flex-wrap:wrap;flex:1 0 100%;align-items:center;gap:7px;padding-left:21px;display:flex}.invite-code-value{border:1px dashed var(--line-strong);background:var(--surface-sunken);color:var(--ink);letter-spacing:.12em;border-radius:6px;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:640}.invite-code-actions{flex-wrap:wrap;gap:6px;display:flex}.invite-action{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);border-radius:7px;padding:4px 9px;font-size:11px;font-weight:620}.invite-action:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-sunken)}.invite-action:disabled{opacity:.55}.invite-action-danger{color:var(--negative)}.invite-action-danger:hover:not(:disabled){border-color:var(--negative-soft);background:var(--negative-soft)}.invite-expiry{color:var(--ink-faint);flex:1 0 100%;font-size:11px}.settings-member-list li.is-paused{opacity:.72}.invite-error{color:var(--negative);flex:1 0 100%;font-size:11.5px}.member-pin-form{flex-wrap:wrap;flex:1 0 100%;align-items:center;gap:7px;padding-left:21px;display:flex}.member-pin-form label{color:var(--ink);flex:1 0 100%;font-size:11.5px;font-weight:640}.member-pin-form input{border:1px solid var(--line-strong);background:var(--surface);width:108px;min-height:36px;color:var(--ink);letter-spacing:.3em;border-radius:8px;padding:0 9px;font-size:13px}.segmented-control{border:1px solid var(--line);background:var(--surface-sunken);border-radius:9px;gap:3px;margin-top:14px;padding:3px;display:inline-flex}.segmented-option{color:var(--ink-muted);background:0 0;border:0;border-radius:7px;padding:6px 11px;font-size:11.5px;font-weight:640}.segmented-option.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px var(--shadow-color)}.field-hint,.auth-hint{color:var(--ink-faint);margin:2px 0 0;font-size:11.5px;line-height:1.5}.auth-hint{margin:0 0 2px}.auth-secondary-action{color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:0;align-self:center;padding:4px 8px;font-size:12px;font-weight:620;text-decoration:underline}.member-add-form{flex-direction:column;gap:8px;margin-top:15px;display:flex}.member-add-form label{color:var(--ink);margin-top:5px;font-size:12px;font-weight:640}.member-add-form input{border:1px solid var(--line-strong);background:var(--surface);min-height:41px;color:var(--ink);border-radius:8px;padding:0 10px;font-size:13px}.category-manager{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);align-items:start;gap:18px;margin-top:18px;display:grid}.confirm-dialog-backdrop{z-index:90;background:var(--scrim);place-items:center;padding:18px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--line-strong);background:var(--surface-raised);width:min(100%,420px);box-shadow:0 22px 52px var(--shadow-color);border-radius:14px;padding:22px}.confirm-dialog h2{color:var(--ink-strong);margin:0;font-size:17px;line-height:1.3}.confirm-dialog p{color:var(--ink-muted);margin:9px 0 0;font-size:13px;line-height:1.55}.confirm-dialog label{color:var(--ink);margin:20px 0 8px;font-size:13px;font-weight:650;display:block}.confirm-dialog-word{border:1px dashed var(--line-strong);background:var(--surface-sunken);color:var(--ink-strong);letter-spacing:.08em;border-radius:6px;padding:1px 7px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;display:inline-block}.confirm-dialog input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:46px;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;border-radius:10px;padding:0 14px;font-size:16px}.confirm-dialog input::placeholder{color:var(--ink-faint)}.confirm-dialog .form-error{margin-top:10px}.confirm-dialog-actions{gap:10px;margin-top:20px;display:flex}.confirm-dialog-cancel,.confirm-dialog-confirm{cursor:pointer;border-radius:10px;flex:1 1 0;min-height:45px;font-size:14px;font-weight:670}.confirm-dialog-cancel{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft)}.confirm-dialog-cancel:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}.confirm-dialog-cancel:disabled{cursor:wait;opacity:.7}.confirm-dialog-confirm{border:1px solid var(--negative);background:var(--negative);color:var(--negative-ink)}.confirm-dialog-confirm:hover:not(:disabled){box-shadow:0 6px 16px var(--shadow-color)}.confirm-dialog-confirm:disabled{cursor:not-allowed;opacity:.45}@media (max-width:420px){.confirm-dialog-actions{flex-direction:column-reverse}}.theme-panel{border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface);margin-top:18px;padding:18px 20px 20px}.theme-options{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px;margin-top:16px;display:grid}.theme-option{border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);text-align:left;border-radius:11px;align-items:center;gap:11px;padding:11px 12px;transition:border-color .15s ease-out,box-shadow .15s ease-out,transform .15s ease-out;display:flex}.theme-option:hover{border-color:var(--line-strong);transform:translateY(-1px)}.theme-option.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.theme-option-swatch{border:1px solid var(--line);background:var(--surface-sunken);width:34px;height:34px;color:var(--ink-soft);border-radius:9px;flex:none;place-items:center;display:grid}.theme-option-swatch[data-auto=true]{background:linear-gradient(135deg, var(--surface-raised) 50%, var(--nav-bg) 50%)}.theme-option.is-active .theme-option-swatch{border-color:var(--accent);color:var(--accent)}.theme-option-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.theme-option-text strong{color:var(--ink-strong);font-size:13px;font-weight:660}.theme-option-text small{color:var(--ink-muted);font-size:11.5px;line-height:1.4}.theme-option-check{width:18px;height:18px;color:var(--accent);flex:none;place-items:center;display:grid}.theme-toggle-wrapper{display:inline-flex;position:relative}.theme-toggle{border:1px solid var(--line);background:var(--surface);min-height:56px;color:var(--ink-soft);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:0 14px;font-size:13px;font-weight:620;transition:border-color .15s ease-out,color .15s ease-out,transform .15s ease-out;display:inline-flex}.theme-toggle:hover{border-color:var(--line-strong);color:var(--ink-strong);transform:translateY(-1px)}.theme-toggle:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.theme-toggle .rotate-90{transform:rotate(90deg)}.theme-toggle.is-compact{width:44px;height:56px;min-height:56px;color:var(--nav-ink-strong);justify-content:center;padding:0}.theme-dropdown{z-index:50;border:1px solid var(--line);background:var(--surface-raised);min-width:180px;box-shadow:0 12px 32px var(--shadow-color);border-radius:10px;padding:6px;animation:.15s ease-out theme-dropdown-in;position:absolute;top:calc(100% + 8px);right:0}@keyframes theme-dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.theme-dropdown-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:550;transition:background-color .13s ease-out,color .13s ease-out;display:flex}.theme-dropdown-item:hover{background:var(--surface-sunken);color:var(--ink-strong)}.theme-dropdown-item.is-active{background:var(--accent-soft);color:var(--accent-strong)}.theme-dropdown-item.is-active:hover{background:var(--accent);color:var(--ink-on-accent)}.theme-dropdown-icon{width:22px;height:22px;color:var(--ink-muted);flex-shrink:0;place-items:center;display:grid}.theme-dropdown-item.is-active .theme-dropdown-icon{color:var(--accent-strong)}.theme-dropdown-label{flex:1}.theme-dropdown-check{color:var(--accent-strong);flex-shrink:0}.theme-dropdown-item.is-active .theme-dropdown-check{color:var(--ink-on-accent)}.category-list-panel,.add-category-panel{border:1px solid var(--line);background:var(--surface);border-radius:13px;min-width:0;padding:18px}.add-category-panel h2{color:var(--ink);margin:0;font-size:17px;font-weight:690}.add-category-panel>p{color:var(--ink-muted);margin:6px 0 0;font-size:12px;line-height:1.5}.settings-category-list{flex-direction:column;margin:14px 0 0;padding:0;list-style:none;display:flex}.settings-category-list li{border-top:1px solid var(--line-soft);align-items:center;gap:10px;min-width:0;min-height:47px;display:flex}.category-archived{opacity:.62}.category-actions{flex:none;gap:9px;display:flex}.category-edit-form{flex-wrap:wrap;flex:auto;align-items:center;gap:7px;min-width:0;display:flex}.category-edit-form input{border:1px solid var(--line);min-width:70px;height:34px;color:var(--ink);border-radius:7px;flex:auto;padding:0 7px;font-size:11px}.category-edit-form select{border:1px solid var(--line);width:78px;height:34px;color:var(--ink);border-radius:7px;font-size:10px}.category-add-form{flex-direction:column;gap:7px;margin-top:14px;display:flex}.category-add-form label{color:var(--ink);margin-top:4px;font-size:11px;font-weight:650}.category-add-form input,.category-add-form select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:39px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.category-icon-picker-label{color:var(--ink);margin-top:4px;font-size:11px;font-weight:650}.category-icon-picker{flex-wrap:wrap;gap:6px;display:flex}.category-edit-form .category-icon-picker{flex:1 0 100%}.category-icon-choice{border:1px solid var(--line-strong);background:var(--surface);width:34px;height:34px;color:var(--ink-soft);cursor:pointer;border-radius:8px;place-items:center;padding:0;transition:border-color .15s,background .15s,color .15s;display:grid}.category-icon-choice:hover{border-color:var(--accent);color:var(--ink)}.category-icon-choice:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.category-icon-choice-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.history-filters{border:1px solid var(--line);background:var(--surface);border-radius:13px;grid-template-columns:minmax(190px,1.5fr) repeat(4,minmax(110px,1fr));align-items:end;gap:12px;padding:16px;display:grid}.history-filter-field{flex-direction:column;gap:6px;min-width:0;display:flex}.history-filter-field label{color:var(--ink-soft);font-size:11px;font-weight:650}.history-filter-field input,.history-filter-field select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;height:40px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.history-filter-actions{grid-column:1/-1;align-items:center;gap:15px;padding-top:1px;display:flex}.filter-submit{background:var(--accent);min-height:40px;color:var(--ink-on-accent);cursor:pointer;border:0;border-radius:8px;padding:0 14px;font-size:12px;font-weight:670}.filter-submit:hover{background:var(--accent-strong)}.filter-reset{color:var(--accent-strong);text-underline-offset:3px;font-size:12px;font-weight:630}.history-total-line{color:var(--ink-muted);justify-content:space-between;align-items:baseline;gap:16px;margin:24px 1px 13px;font-size:13px;display:flex}.history-total-line strong{color:var(--ink);letter-spacing:-.02em;font-size:20px;font-weight:710}.history-days{flex-direction:column;gap:17px;display:flex}.history-day{border-top:1px solid var(--line);min-width:0}.history-day-heading{justify-content:space-between;align-items:center;gap:16px;padding:14px 1px 9px;display:flex}.history-day-heading h2{color:var(--ink);margin:0;font-size:14px;font-weight:690}.history-day-heading strong{color:var(--ink);font-size:14px;font-weight:680}.history-expense-list{margin:0;padding:0;list-style:none}.history-expense-row{background:var(--surface);border-radius:10px;align-items:center;gap:11px;min-width:0;padding:12px 10px;display:flex}.history-expense-row+.history-expense-row{margin-top:5px}.expense-row-actions{flex:none;align-items:center;gap:9px;margin-left:4px;display:flex}.expense-row-action{color:var(--accent-strong);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:5px 2px;font-size:11px;font-weight:650;text-decoration:none}.expense-row-action:hover:not(:disabled){text-decoration:underline}.expense-row-delete{color:var(--negative)}.expense-row-delete:disabled{cursor:wait;opacity:.65}.expense-row-delete-wrap{position:relative}.expense-inline-error{z-index:2;border:1px solid var(--negative-soft);background:var(--negative-soft);width:max-content;max-width:230px;color:var(--negative);border-radius:6px;padding:6px 8px;font-size:10px;position:absolute;top:100%;right:0}.history-empty-state{border-top:1px solid var(--line);align-items:flex-start;gap:16px;padding:21px 3px;display:flex}.history-empty-state h2{color:var(--ink);margin:0;font-size:15px;font-weight:680}.history-empty-state p,.history-limit-note{color:var(--ink-muted);margin:6px 0 0;font-size:12px;line-height:1.5}.history-limit-note{padding:12px 0}.export-links{color:var(--ink-muted);align-items:center;gap:8px;margin:0 0 16px;font-size:11px;display:flex}.export-links a{border:1px solid var(--line-strong);background:var(--surface);min-height:30px;color:var(--accent-strong);border-radius:7px;align-items:center;padding:0 9px;font-size:11px;font-weight:650;text-decoration:none;display:inline-flex}.export-links a:hover{border-color:var(--accent);background:var(--accent-soft)}.edit-expense-page{width:min(100%,680px)}.edit-category-label{color:var(--ink);margin:21px 0 8px;font-size:13px;font-weight:650}.edit-category-wrap{border:1px solid var(--line-strong);min-height:45px;color:var(--accent);border-radius:8px;align-items:center;gap:9px;padding:0 11px;display:flex}.edit-category-wrap select{width:100%;height:42px;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.summary-filters{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:minmax(140px,1.1fr) minmax(140px,1fr) minmax(140px,1fr) minmax(160px,1fr) auto;align-items:end;gap:11px;padding:14px;display:grid}.summary-filter-field,.budget-month-filter{flex-direction:column;gap:6px;min-width:0;display:flex}.summary-filter-field label,.budget-month-filter label{color:var(--ink-soft);font-size:11px;font-weight:650}.summary-filter-field input,.summary-filter-field select,.budget-month-filter input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;height:40px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.summary-quick-periods{flex-wrap:wrap;gap:7px;margin:13px 0 23px;display:flex}.summary-quick-periods a{border:1px solid var(--line-soft);background:var(--surface);min-height:32px;color:var(--ink-soft);border-radius:7px;align-items:center;padding:0 10px;font-size:11px;font-weight:610;text-decoration:none;display:inline-flex}.summary-quick-periods a:hover,.summary-quick-periods a[aria-current=page]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.summary-overview{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(200px,.34fr);align-items:center;gap:24px;padding:22px 0;display:grid}.summary-primary-total{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.summary-primary-total p{color:var(--ink-muted);margin:0;font-size:12px;font-weight:620}.summary-primary-total>strong{color:var(--ink);letter-spacing:-.04em;font-size:clamp(32px,4vw,45px);font-weight:730;line-height:1.1}.summary-primary-total>span{color:var(--ink-muted);font-size:12px}.summary-comparison{border-left:1px solid var(--line);flex-direction:column;justify-content:center;gap:6px;min-height:86px;padding-left:20px;display:flex}.summary-comparison>span:first-child{color:var(--ink-muted);font-size:11px}.summary-comparison>strong{color:var(--ink);font-size:18px;font-weight:690}.summary-comparison>span:last-child{color:var(--ink-muted);font-size:11px}.summary-change-up{color:var(--negative)!important}.summary-change-down{color:var(--positive)!important}.summary-highlights{flex-wrap:wrap;gap:9px 28px;padding:13px 0 18px;display:flex}.summary-highlights p{color:var(--ink-muted);margin:0;font-size:12px}.summary-highlights strong{color:var(--ink);font-weight:670}.summary-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.summary-chart-panel,.member-summary-section{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0;padding:17px 17px 12px}.summary-chart-wide{grid-column:1/-1}.summary-chart-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.summary-chart-heading h2{color:var(--ink);letter-spacing:-.015em;margin:0;font-size:15px;font-weight:690}.summary-chart-heading>span{color:var(--ink-faint);font-size:10px}.summary-chart-canvas{width:100%;margin-top:13px}.chart-empty{color:var(--ink-muted);margin:15px 0 11px;font-size:12px;line-height:1.5}.category-chart-layout{grid-template-columns:minmax(145px,.9fr) minmax(0,1.1fr);align-items:center;gap:8px;margin-top:5px;display:grid}.category-chart-canvas{min-width:0}.category-chart-legend{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.category-chart-legend li{align-items:center;gap:7px;min-width:0;display:flex}.legend-category-name{min-width:0;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:10px;overflow:hidden}.legend-share-track{background:var(--surface-sunken);border-radius:999px;flex:none;width:54px;height:6px;display:block;overflow:hidden}.legend-share-fill{border-radius:inherit;background:var(--category-color);height:100%;display:block}.category-chart-legend strong{min-width:30px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;flex:none;font-size:10px;font-weight:670}.chart-tooltip{border:1px solid var(--line);background:var(--surface);min-width:125px;color:var(--ink);border-radius:8px;flex-direction:column;gap:5px;padding:9px 11px;font-size:11px;display:flex}.chart-tooltip span{color:var(--accent-strong);font-size:13px;font-weight:700}.member-summary-section{margin-top:17px}.member-summary-list{margin:13px 0 0;padding:0;list-style:none}.member-summary-list li{border-top:1px solid var(--line-soft);align-items:center;gap:10px;min-height:43px;display:flex}.member-summary-list>li>strong{color:var(--ink);font-size:12px;font-weight:680}.budget-month-filter{grid-template-columns:minmax(140px,220px) auto;justify-content:start;align-items:end;gap:10px;margin-bottom:18px;display:grid}.budget-month-filter label{grid-column:1/-1}.budget-manager{flex-direction:column;gap:18px;display:flex}.budget-summary-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:30px;padding:18px 0;display:flex}.budget-summary-line>div{flex-direction:column;gap:5px;min-width:145px;display:flex}.budget-summary-line span{color:var(--ink-muted);font-size:11px}.budget-summary-line strong{color:var(--ink);font-size:17px;font-weight:690}.budget-category-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.budget-category-row{border-bottom:1px solid var(--line-soft);padding:15px 0 13px}.budget-category-topline,.budget-category-bottomline{align-items:center;gap:9px;display:flex}.budget-category-topline>strong{color:var(--ink);flex:auto;font-size:13px;font-weight:660}.budget-category-spent{color:var(--ink);font-size:12px;font-weight:670}.budget-progress-track{background:var(--line-soft);border-radius:4px;height:6px;margin:11px 0 6px;overflow:hidden}.budget-progress-track span{border-radius:inherit;background:var(--accent);height:100%;display:block}.budget-level-warn .budget-progress-track span{background:var(--warning)}.budget-level-over .budget-progress-track span{background:var(--negative)}.budget-category-bottomline{color:var(--ink-muted);justify-content:space-between;font-size:11px}.budget-edit-form{border:1px solid var(--line);background:var(--surface-sunken);border-radius:9px;flex-wrap:wrap;align-items:end;gap:8px;margin-top:12px;padding:12px;display:flex}.budget-edit-form label{width:100%;color:var(--ink);font-size:11px;font-weight:650}.budget-edit-form input{border:1px solid var(--line);background:var(--surface);width:140px;min-height:38px;color:var(--ink);border-radius:7px;padding:0 9px;font-size:12px}.recurring-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:19px;display:grid}.recurring-rule-list,.recurring-create-panel{border:1px solid var(--line);background:var(--surface);border-radius:13px;min-width:0;padding:19px}.recurring-list{flex-direction:column;margin:16px 0 0;padding:0;list-style:none;display:flex}.recurring-list li{border-top:1px solid var(--line-soft);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px 11px;padding:12px 0;display:grid}.recurring-rule-paused{opacity:.62}.recurring-rule-main{flex-direction:column;gap:4px;min-width:0;display:flex}.recurring-rule-main strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:660;overflow:hidden}.recurring-rule-main span,.recurring-rule-next{color:var(--ink-muted);font-size:10px}.recurring-rule-amount{color:var(--ink);white-space:nowrap;font-size:12px;font-weight:680}.recurring-rule-next{grid-column:2}.recurring-list .expense-row-action{grid-area:2/3}.recurring-create-panel h2{color:var(--ink);margin:0;font-size:17px;font-weight:690}.recurring-create-panel>p{color:var(--ink-muted);margin:6px 0 0;font-size:12px;line-height:1.5}.recurring-form{flex-direction:column;gap:7px;margin-top:14px;display:flex}.recurring-form>label,.recurring-date-fields label{color:var(--ink);margin-top:5px;font-size:11px;font-weight:650}.recurring-form label span{color:var(--ink-faint);font-weight:500}.recurring-form input,.recurring-form select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;min-height:40px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.recurring-interval-field{grid-template-columns:100px 1fr;align-items:center;gap:9px;display:grid}.recurring-interval-field span{color:var(--ink-muted);font-size:11px}.recurring-date-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.recurring-date-fields>div{flex-direction:column;gap:7px;min-width:0;display:flex}.budget-edit-form .filter-submit{min-height:38px}@media (max-width:1050px){.desktop-sidebar{width:218px}.main-column{width:calc(100% - 218px);margin-left:218px;padding-left:31px;padding-right:31px}.first-household-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.92fr);gap:25px;padding:30px}.today-layout{grid-template-columns:minmax(0,1fr) minmax(310px,.9fr);gap:16px}.quick-expense-form{padding:20px}.history-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.history-filter-search{grid-column:span 2}.summary-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-filters>.filter-submit{grid-column:1/-1}}@media (max-width:820px){.app-frame{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.desktop-sidebar{display:none}.mobile-topbar{z-index:25;background:var(--nav-bg);height:60px;color:var(--nav-ink-strong);flex:0 0 60px;justify-content:space-between;align-items:center;padding:0 19px;display:flex}.mobile-topbar .brand-mark{width:34px;height:34px}.main-column{overscroll-behavior-y:contain;flex:auto;width:100%;min-height:0;margin:0;padding:27px 23px 76px;overflow-y:auto}.page-description{max-width:50ch;margin-top:7px;font-size:14px}.first-household-panel{grid-template-columns:minmax(0,1fr);gap:28px;padding:24px}.today-layout,.members-manager,.recurring-layout,.category-manager{grid-template-columns:minmax(0,1fr)}.today-layout,.today-content{grid-template-columns:minmax(0,1fr);gap:17px}.quick-expense-form{padding:21px}.today-rail{gap:14px}.settings-household-code{flex-direction:column;align-items:flex-start;gap:13px}.household-preferences-form{grid-template-columns:minmax(0,1fr)}.history-filters,.summary-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:13px}.summary-overview{grid-template-columns:minmax(0,1fr);gap:14px;padding:17px 0}.summary-comparison{border:0;flex-flow:wrap;justify-content:flex-start;align-items:baseline;gap:8px 13px;min-height:0;padding:0}.summary-chart-grid{grid-template-columns:minmax(0,1fr)}.summary-chart-wide{grid-column:auto}.category-chart-layout{grid-template-columns:minmax(125px,.85fr) minmax(0,1.15fr)}.history-filter-search,.history-filter-actions{grid-column:1/-1}.history-expense-row{flex-wrap:wrap;padding-left:8px;padding-right:8px}.expense-row-main{flex-basis:calc(100% - 120px)}.expense-row-amount{margin-left:auto}.history-expense-row,.today-expense-row{flex-wrap:wrap;row-gap:10px}.history-expense-row .expense-row-actions,.today-expense-row .expense-row-actions{border-top:1px solid var(--line-soft);justify-content:flex-end;width:100%;margin-left:46px}.today-expense-row .expense-row-actions{opacity:1}.first-household-copy{max-width:600px}.setup-mark{margin-bottom:17px}.first-household-copy h2{max-width:17ch;font-size:26px}.first-household-copy>p{margin:11px 0 18px;font-size:14px}.primary-action{justify-content:space-between;width:100%}.period-preview{padding:17px 17px 14px}.mobile-bottom-wrap{z-index:30;padding:8px 10px max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--line-soft);background:var(--surface);flex:none;display:block}@supports (color:color-mix(in lab, red, red)){.mobile-bottom-wrap{background:color-mix(in srgb, var(--surface) 97%, transparent)}}.bottom-navigation{justify-content:space-around;gap:2px}.bottom-navigation .navigation-link{min-width:0;min-height:51px;color:var(--ink-muted);border-radius:9px;flex-direction:column;flex:1 1 0;justify-content:center;gap:3px;font-size:10px;font-weight:610}.bottom-navigation .navigation-link-current{background:var(--accent-soft);color:var(--accent-strong)}}@media (max-width:420px){.auth-page{padding-left:15px;padding-right:15px}.auth-brand-bar{min-height:66px}.auth-brand-note{text-align:right;max-width:120px}.auth-content{align-items:start;min-height:calc(100vh - 100px);padding-top:24px}.auth-panel{padding:22px 19px}.pin-fields{gap:9px}.mobile-topbar{padding:0 15px}.main-column{padding-left:16px;padding-right:16px}.first-household-panel{gap:23px;padding:19px}.quick-expense-form{padding:17px}.amount-input-wrap input{font-size:32px}.period-types{gap:5px}.period-types span{padding:5px 7px;font-size:9px}.bottom-navigation .navigation-link{font-size:9px}.history-filter-actions{flex-wrap:wrap}.summary-quick-periods{gap:5px}.summary-quick-periods a{min-height:30px;padding:0 8px;font-size:10px}.budget-summary-line{gap:15px}.budget-summary-line>div{min-width:calc(50% - 8px)}.bottom-navigation{justify-content:space-around;gap:2px}.bottom-navigation .navigation-link{min-width:0;min-height:51px;color:var(--ink-muted);border-radius:9px;flex-direction:column;flex:1 1 0;justify-content:center;gap:3px;font-size:10px;font-weight:610}.bottom-navigation .navigation-link-current{background:var(--accent-soft);color:var(--accent-strong)}}.help-fab{z-index:66;background:var(--accent);width:56px;height:56px;color:var(--ink-on-accent);cursor:pointer;box-shadow:0 0 0 5px var(--accent), 0 14px 30px var(--accent);border:none;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:24px;right:24px}@supports (color:color-mix(in lab, red, red)){.help-fab{box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 16%, transparent), 0 14px 30px color-mix(in srgb, var(--accent) 34%, transparent)}}.help-fab{transition:transform .16s ease-out,box-shadow .16s ease-out}.help-fab:hover{box-shadow:0 0 0 7px var(--accent), 0 18px 36px var(--accent);transform:translateY(-2px)scale(1.04)}@supports (color:color-mix(in lab, red, red)){.help-fab:hover{box-shadow:0 0 0 7px color-mix(in srgb, var(--accent) 18%, transparent), 0 18px 36px color-mix(in srgb, var(--accent) 40%, transparent)}}.help-fab:focus-visible{box-shadow:0 0 0 3px var(--accent-soft), 0 0 0 6px var(--accent);outline:none}.help-panel{z-index:67;border:1px solid var(--line);background:var(--surface-raised);border-radius:18px;flex-direction:column;width:min(408px,100vw - 48px);height:min(640px,100dvh - 140px);animation:.2s cubic-bezier(.2,.9,.3,1) help-panel-in;display:flex;position:fixed;bottom:92px;right:24px;overflow:hidden;box-shadow:0 28px 64px #00000042,0 6px 16px #0000001f}@keyframes help-panel-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}.help-header{background:var(--accent);color:var(--ink-on-accent);align-items:center;gap:11px;padding:14px 14px 14px 16px;display:flex}.help-header-avatar{background:#ffffff3d;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.help-header-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.help-header-copy strong{letter-spacing:-.01em;font-size:14px;font-weight:700}.help-header-copy span{opacity:.85;align-items:center;gap:6px;font-size:11.5px;font-weight:550;display:inline-flex}.help-status-dot{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite help-status-pulse}@keyframes help-status-pulse{50%{opacity:.35}}.help-close{width:34px;height:34px;color:inherit;cursor:pointer;background:#ffffff2e;border:none;border-radius:50%;flex:none;place-items:center;transition:background-color .14s ease-out;display:grid}.help-close:hover{background:#ffffff4d}.help-close:focus-visible{outline-offset:2px;outline:2px solid}.help-log{background:var(--surface-raised);scrollbar-width:thin;flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px 14px;display:flex;overflow-y:auto}.help-msg{gap:10px;display:flex}.help-msg-user{flex-direction:row-reverse}.help-msg-avatar{background:var(--accent-soft);width:28px;height:28px;color:var(--accent-strong);border-radius:50%;flex:none;place-items:center;display:grid}.help-msg-body{flex-direction:column;gap:8px;min-width:0;display:flex}.help-msg-assistant .help-msg-body{border:1px solid var(--line-soft);background:var(--surface);border-radius:4px 14px 14px;max-width:calc(100% - 38px);padding:11px 13px}.help-msg-user .help-msg-body{background:var(--accent);max-width:85%;color:var(--ink-on-accent);border-radius:14px 14px 4px;padding:9px 13px;font-size:13.5px;line-height:1.5}.help-msg-title{color:var(--ink);letter-spacing:-.01em;font-size:13.5px;font-weight:700;line-height:1.4}.help-msg-text{color:var(--ink-soft);margin:0;font-size:13.5px;line-height:1.55}.help-steps{counter-reset:help-step;flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.help-steps li{color:var(--ink-soft);gap:9px;font-size:13.5px;line-height:1.5;display:flex}.help-steps li:before{counter-increment:help-step;content:counter(help-step);background:var(--accent-soft);width:20px;height:20px;color:var(--accent-strong);border-radius:50%;flex:0 0 20px;place-items:center;margin-top:1px;font-size:11px;font-weight:700;display:grid}.help-note{border:1px solid var(--warning);gap:8px;margin:0;padding:9px 11px;display:flex}@supports (color:color-mix(in lab, red, red)){.help-note{border:1px solid color-mix(in srgb, var(--warning) 28%, transparent)}}.help-note{background:var(--warning-soft);color:var(--warning);border-radius:10px;font-size:12.5px;line-height:1.5}.help-note svg{flex:none;margin-top:1px}.help-links{flex-wrap:wrap;gap:8px;display:flex}.help-link{border:1px solid var(--line-strong);background:var(--surface-raised);min-height:34px;color:var(--accent-strong);border-radius:9px;align-items:center;gap:4px;padding:0 12px;font-size:12.5px;font-weight:650;text-decoration:none;transition:border-color .14s ease-out,background-color .14s ease-out;display:inline-flex}.help-link:hover{border-color:var(--accent);background:var(--accent-soft)}.help-link:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.help-typing{flex-direction:row;align-items:center;gap:5px;padding:13px 15px!important}.help-typing i{background:var(--ink-faint);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite help-typing-dot}.help-typing i:nth-child(2){animation-delay:.14s}.help-typing i:nth-child(3){animation-delay:.28s}@keyframes help-typing-dot{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.help-chips{border-top:1px solid var(--line-soft);background:var(--surface-raised);flex-wrap:wrap;gap:7px;max-height:118px;padding:10px 14px;display:flex;overflow-y:auto}.help-chip{border:1px solid var(--line-strong);background:var(--surface);max-width:100%;min-height:32px;color:var(--ink-soft);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:0 12px;font-size:12px;font-weight:620;transition:border-color .14s ease-out,background-color .14s ease-out,color .14s ease-out;overflow:hidden}.help-chip:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.help-chip:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.help-composer-wrap{border-top:1px solid var(--line-soft);background:var(--surface);position:relative}.help-suggest{z-index:5;border:1px solid var(--line);background:var(--surface-raised);border-radius:12px;flex-direction:column;animation:.14s ease-out help-panel-in;display:flex;position:absolute;bottom:calc(100% + 8px);left:12px;right:12px;overflow:hidden;box-shadow:0 14px 32px #00000029}.help-suggest-item{min-height:42px;color:var(--ink-soft);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:9px;padding:0 13px;font-size:13px;font-weight:570;transition:background-color .12s ease-out;display:flex}.help-suggest-item+.help-suggest-item{border-top:1px solid var(--line-soft)}.help-suggest-item:hover{background:var(--accent-soft);color:var(--accent-strong)}.help-suggest-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.help-composer{gap:8px;padding:12px;display:flex}.help-input{border:1px solid var(--line-strong);background:var(--surface-raised);min-width:0;min-height:42px;color:var(--ink);border-radius:11px;flex:1;padding:0 13px;font-size:14px}.help-input::placeholder{color:var(--ink-faint)}.help-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.help-send{background:var(--accent);width:42px;height:42px;color:var(--ink-on-accent);cursor:pointer;border:none;border-radius:11px;flex:none;place-items:center;transition:opacity .14s ease-out,transform .14s ease-out;display:grid}.help-send:hover:not(:disabled){transform:scale(1.05)}.help-send:disabled{cursor:default;opacity:.4}.help-send:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.sidebar-help-button{width:100%;min-height:46px;color:var(--nav-ink);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:11px;padding:0 10px 0 14px;font-size:13.5px;font-weight:600;transition:background-color .15s ease-out,color .15s ease-out;display:flex}.sidebar-help-button:hover{background:var(--nav-bg-raised);color:var(--nav-ink-strong)}.sidebar-help-button:focus-visible{box-shadow:inset 0 0 0 2px var(--nav-accent);outline:none}.sidebar-help-icon{background:var(--nav-accent);border-radius:8px;flex:none;place-items:center;width:32px;height:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.sidebar-help-icon{background:color-mix(in srgb, var(--nav-accent) 15%, transparent)}}.sidebar-help-icon{color:var(--nav-accent)}.sidebar-help-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-help-chevron{color:var(--nav-ink-soft);opacity:.7}@media (max-width:820px){.help-fab{right:16px;bottom:calc(80px + env(safe-area-inset-bottom));width:54px;height:54px}.help-panel{width:auto;height:100dvh;box-shadow:none;border:none;border-radius:0;inset:0}.help-header{padding-top:calc(14px + env(safe-area-inset-top))}.help-msg-assistant .help-msg-body{max-width:calc(100% - 34px)}}@media (max-width:420px){.help-chips{max-height:96px}}.tooltip-content{pointer-events:none;animation:.15s ease-out tooltip-in}.tooltip-inner{border-radius:var(--radius-panel);background:var(--surface-raised);color:var(--ink);white-space:nowrap;box-shadow:0 4px 16px var(--shadow-color), 0 0 0 1px var(--line);justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;font-weight:550;line-height:1.4;display:inline-flex}.tooltip-arrow-top:before,.tooltip-arrow-bottom:before,.tooltip-arrow-left:before,.tooltip-arrow-right:before{content:"";border:6px solid #0000;width:0;height:0;position:absolute}.tooltip-arrow-top:before{border-top-color:var(--surface-raised);border-bottom:none;bottom:-12px;left:50%;transform:translate(-50%)}.tooltip-arrow-bottom:before{border-bottom-color:var(--surface-raised);border-top:none;top:-12px;left:50%;transform:translate(-50%)}.tooltip-arrow-left:before{border-left-color:var(--surface-raised);border-right:none;top:50%;right:-12px;transform:translateY(-50%)}.tooltip-arrow-right:before{border-right-color:var(--surface-raised);border-left:none;top:50%;left:-12px;transform:translateY(-50%)}@keyframes tooltip-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.tooltip-content{animation:none}}.guided-tour-overlay{z-index:50;pointer-events:none;position:fixed;inset:0}.guided-tour-overlay:has(.guided-tour-spotlight){pointer-events:auto}.guided-tour-spotlight{pointer-events:none}@keyframes guided-tour-pulse{0%,to{opacity:.6;stroke-width:2px}50%{opacity:1;stroke-width:3px}}@media (prefers-reduced-motion:reduce){.guided-tour-spotlight rect:last-of-type{opacity:1;animation:none}}.guided-tour-popover{animation:.2s ease-out guided-tour-popover-in}@keyframes guided-tour-popover-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.guided-tour-popover-inner{border-radius:var(--radius-panel);background:var(--surface-raised);color:var(--ink);box-shadow:0 8px 32px var(--shadow-color), 0 0 0 1px var(--line);flex-direction:column;gap:12px;padding:16px;display:flex}.guided-tour-popover-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.guided-tour-popover-title{color:var(--ink);margin:0;font-size:16px;font-weight:700;line-height:1.3}.guided-tour-popover-progress{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;margin-top:2px;font-size:11px;font-weight:600}.guided-tour-popover-close{width:28px;height:28px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;place-items:center;transition:background-color .15s ease-out,color .15s ease-out;display:grid}.guided-tour-popover-close:hover{background:var(--surface-sunken);color:var(--ink)}.guided-tour-popover-close:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.guided-tour-popover-content{color:var(--ink-soft);font-size:14px;line-height:1.55}.guided-tour-popover-content p{margin:0 0 8px}.guided-tour-popover-content p:last-child{margin-bottom:0}.guided-tour-popover-content ul,.guided-tour-popover-content ol{margin:8px 0;padding-left:20px}.guided-tour-popover-content li{margin:4px 0}.guided-tour-popover-footer{border-top:1px solid var(--line-soft);flex-direction:column;gap:10px;padding-top:4px;display:flex}.guided-tour-popover-dots{justify-content:center;align-items:center;gap:6px;display:flex}.guided-tour-dot{background:var(--line);border-radius:50%;width:8px;height:8px;transition:background-color .15s ease-out,transform .15s ease-out}.guided-tour-dot.active{background:var(--accent);transform:scale(1.2)}.guided-tour-popover-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.guided-tour-btn-placeholder{width:72px}.guided-tour-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 14px;font-size:13px;font-weight:650;transition:background-color .15s ease-out,transform .1s ease-out;display:inline-flex}.guided-tour-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-soft);outline:none}.guided-tour-btn:active{transform:scale(.97)}.guided-tour-btn-primary{background:var(--accent);color:var(--ink-on-accent)}.guided-tour-btn-primary:hover{background:var(--accent-strong)}.guided-tour-btn-secondary{background:var(--surface-sunken);color:var(--ink)}.guided-tour-btn-secondary:hover{background:var(--track)}.guided-tour-btn-action{background:var(--positive-soft);color:var(--positive)}.guided-tour-btn-action:hover{background:var(--positive);color:var(--ink-on-accent)}.guided-tour-arrow{border:8px solid #0000;width:0;height:0;position:absolute}.guided-tour-arrow-top{border-top-color:var(--surface-raised);border-bottom:none;bottom:-16px;left:50%;transform:translate(-50%)}.guided-tour-arrow-bottom{border-bottom-color:var(--surface-raised);border-top:none;top:-16px;left:50%;transform:translate(-50%)}.guided-tour-arrow-left{border-left-color:var(--surface-raised);border-right:none;top:50%;right:-16px;transform:translateY(-50%)}.guided-tour-arrow-right{border-right-color:var(--surface-raised);border-left:none;top:50%;left:-16px;transform:translateY(-50%)}.guided-tour-connector,.guided-tour-connector circle{pointer-events:none}.guided-tour-launcher{z-index:40;background:var(--accent);min-height:48px;color:var(--ink-on-accent);cursor:pointer;box-shadow:0 4px 20px var(--shadow-color), 0 0 0 1px var(--line);border:none;border-radius:12px;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:680;transition:background-color .15s ease-out,transform .15s ease-out,box-shadow .15s ease-out;animation:.4s ease-out guided-tour-launcher-in;display:inline-flex;position:fixed;bottom:96px;right:24px}@keyframes guided-tour-launcher-in{0%{opacity:0;transform:translateY(20px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.guided-tour-launcher:hover{background:var(--accent-strong);box-shadow:0 8px 28px var(--shadow-color), 0 0 0 1px var(--line);transform:translateY(-2px)}.guided-tour-launcher:focus-visible{box-shadow:0 0 0 3px var(--accent-soft), 0 4px 20px var(--shadow-color);outline:none}.guided-tour-launcher-label{display:none}.guided-tour-launcher-pulse{border:2px solid var(--accent);opacity:0;border-radius:16px;animation:2s ease-out infinite guided-tour-pulse-ring;position:absolute;inset:-4px}@keyframes guided-tour-pulse-ring{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){.guided-tour-launcher{animation:none}.guided-tour-launcher-pulse{animation:none;display:none}.guided-tour-popover{animation:none}}@media (min-width:640px){.guided-tour-launcher-label{display:inline}}@media (max-width:820px){.guided-tour-launcher{right:78px;bottom:calc(80px + env(safe-area-inset-bottom));padding:0 12px}}.guided-tour-done-backdrop{z-index:61;background:var(--scrim);place-items:center;padding:20px;animation:.2s ease-out guided-tour-popover-in;display:grid;position:fixed;inset:0}.guided-tour-done-card{border:1px solid var(--line);border-radius:var(--radius-panel);background:var(--surface);width:min(360px,100%);box-shadow:0 12px 32px var(--shadow-color);text-align:center;padding:26px 24px 22px}.guided-tour-done-icon{background:var(--positive-soft);width:46px;height:46px;color:var(--positive);border-radius:50%;place-items:center;margin:0 auto 14px;display:grid}.guided-tour-done-card h3{color:var(--ink);letter-spacing:-.02em;margin:0 0 7px;font-size:17px;font-weight:700}.guided-tour-done-card p{color:var(--ink-muted);margin:0;font-size:13.5px;line-height:1.55}.guided-tour-done-actions{gap:10px;margin-top:20px;display:flex}.guided-tour-done-actions .guided-tour-btn{flex:1;justify-content:center}.help-tour-row{padding:10px 14px 0}.help-tour-button{border:1px solid var(--accent-soft);background:var(--accent-soft);width:100%;color:var(--accent);text-align:left;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12.5px;font-weight:600;transition:background-color .14s ease-out,border-color .14s ease-out;display:flex}.help-tour-button span{flex:1}.help-tour-button:hover{border-color:var(--accent);background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.help-tour-button:hover{background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface))}}.help-tour-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tooltip-content.tooltip-fixed{z-index:80;max-width:min(340px,100vw - 24px);position:fixed}.tooltip-inner-wrap{white-space:normal;text-align:left;overflow-wrap:anywhere;max-width:320px;font-weight:500;display:block}@media (max-width:420px){.tooltip-inner-wrap{max-width:240px}}.backup-form .field{flex-direction:column;gap:5px;display:flex}.backup-form .field>span{color:var(--ink);font-size:12.5px;font-weight:600}.backup-form input[type=text],.backup-form input[type=url],.backup-form input[type=password],.backup-form input[type=number],.backup-form input:not([type]),.backup-form select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--ink);border-radius:10px;padding:9px 12px;font-size:13px}.backup-form input:focus-visible,.backup-form select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.backup-form button[type=submit]{background:var(--accent);min-height:40px;color:var(--ink-on-accent,#fff);cursor:pointer;border:none;border-radius:10px;align-self:flex-start;padding:10px 18px;font-size:13px;font-weight:600}.backup-form button[type=submit]:disabled{opacity:.6;cursor:default}.backup-owner-note{border:1px solid var(--line-soft);background:var(--surface-sunken);color:var(--ink-soft);border-radius:10px;margin:0 0 14px;padding:11px 13px;font-size:12.5px;line-height:1.5}.backup-warning{border:1px solid var(--warning-soft,var(--warning,#d97706));gap:9px;margin:0 0 14px;padding:11px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.backup-warning{border:1px solid var(--warning-soft,color-mix(in srgb, var(--warning,#d97706) 35%, transparent))}}.backup-warning{background:var(--warning,#d97706);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.backup-warning{background:color-mix(in srgb, var(--warning,#d97706) 9%, var(--surface))}}.backup-warning{color:var(--ink);font-size:12.5px;line-height:1.5}.backup-warning svg{color:var(--warning,#d97706);flex:none;margin-top:1px}.backup-message-ok{border:1px solid var(--positive-soft);background:var(--positive);border-radius:10px;margin:0 0 12px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.backup-message-ok{background:color-mix(in srgb, var(--positive) 10%, var(--surface))}}.backup-message-ok{color:var(--ink);font-size:12.5px}.backup-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.backup-item{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.backup-item-info{flex-direction:column;gap:2px;min-width:0;display:flex}.backup-item-info strong{color:var(--ink);font-size:14px;font-weight:600}.backup-item-info span{color:var(--ink-soft);font-size:12.5px}.backup-item-meta{color:var(--ink-muted)!important;font-size:11.5px!important}.backup-item-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.backup-form{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:12px;flex-direction:column;gap:14px;margin:0 0 18px;padding:16px;display:flex}.backup-kind,.backup-schedule{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.backup-kind legend,.backup-schedule legend{color:var(--ink);margin-bottom:8px;font-size:13px;font-weight:600}.backup-kind-option{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.backup-kind-option span{flex-direction:column;gap:2px;display:flex}.backup-kind-option small,.backup-form .field small{color:var(--ink-muted);font-size:11.5px}.backup-schedule label{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.backup-schedule input[type=number]{border:1px solid var(--line);background:var(--surface);width:70px;min-height:36px;color:var(--ink);border-radius:8px;padding:6px 8px;font-size:13px}.backup-scope{color:var(--ink-soft);align-items:center;gap:8px;font-size:12.5px;display:flex}.backup-history{color:var(--ink-soft);margin-top:16px;font-size:12.5px}.backup-history summary{cursor:pointer;color:var(--accent);font-weight:600}.backup-history ul{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.backup-history li{border:1px solid var(--line-soft);background:var(--surface-sunken);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;display:flex}.backup-status-ok{color:var(--positive);font-weight:600}.backup-status-error{color:var(--danger,#dc2626);font-weight:600}.backup-history-message{color:var(--ink-muted);overflow-wrap:anywhere;flex:100%;font-size:11.5px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
