:root{--color-bg-app: #0b0e11;--color-bg-surface: #13171d;--color-bg-card: #161b22;--color-bg-card-hover: #1c222b;--color-bg-elevated: #212833;--color-bg-input: #0e1217;--color-border: rgba(255, 255, 255, .08);--color-border-subtle: rgba(255, 255, 255, .05);--color-border-strong: rgba(255, 255, 255, .15);--color-border-focus: #34d399;--color-text-primary: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-income: #34d399;--color-expense: #f87171;--color-warning: #fbbf24;--color-destructive: #ef4444;--color-accent: #34d399;--color-accent-hover: #10b981;--color-accent-subtle: rgba(52, 211, 153, .12);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-card: 0 4px 16px rgba(0, 0, 0, .25);--shadow-elevated: 0 14px 34px rgba(0, 0, 0, .45);--shadow-accent: 0 4px 14px rgba(52, 211, 153, .28);--focus-ring: 0 0 0 2px var(--color-bg-app), 0 0 0 4px var(--color-accent);--gradient-bg-app: linear-gradient(180deg, #0d1117 0%, #080a0d 100%);--gradient-glass-card: linear-gradient(145deg, rgba(22, 27, 34, .72) 0%, rgba(14, 18, 23, .82) 100%);--gradient-glass-hover: linear-gradient(145deg, rgba(28, 34, 43, .82) 0%, rgba(18, 23, 30, .92) 100%);--gradient-hero-balance: radial-gradient(120% 120% at 50% 0%, rgba(52, 211, 153, .16) 0%, rgba(20, 184, 166, .06) 45%, rgba(22, 27, 34, .75) 100%);--gradient-accent-button: linear-gradient(135deg, #34d399 0%, #059669 100%);--gradient-accent-button-hover: linear-gradient(135deg, #10b981 0%, #047857 100%);--gradient-income-subtle: linear-gradient(135deg, rgba(52, 211, 153, .12) 0%, rgba(52, 211, 153, .02) 100%);--gradient-expense-subtle: linear-gradient(135deg, rgba(248, 113, 113, .12) 0%, rgba(248, 113, 113, .02) 100%);--gradient-floating-nav: linear-gradient(180deg, rgba(22, 27, 34, .88) 0%, rgba(11, 14, 17, .94) 100%);--glass-bg: rgba(22, 27, 34, .68);--glass-bg-elevated: rgba(33, 40, 51, .78);--glass-border: rgba(255, 255, 255, .09);--glass-border-light: rgba(255, 255, 255, .15);--glass-border-accent: rgba(52, 211, 153, .25);--glass-blur: blur(16px);--glass-blur-lg: blur(24px);--spacing-3xs: 2px;--spacing-2xs: 4px;--spacing-xs: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--padding-page: 16px;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-card: 16px;--radius-lg: 20px;--radius-xl: 24px;--radius-full: 9999px;--radius-control: 10px;--font-family-sans: Sora, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-family-numeric: tabular-nums, Sora, sans-serif;--font-size-caption: .75rem;--font-size-secondary: .8125rem;--font-size-body: .9375rem;--font-size-section-title: 1.125rem;--font-size-page-title: 1.75rem;--font-size-numeric-hero: 2rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--transition-fast: .15s ease;--transition-normal: .2s ease;--mobile-nav-height: 64px}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background-color:var(--color-bg-app);color:var(--color-text-primary);font-family:var(--font-family-sans);font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;color-scheme:dark}body{min-width:320px;min-height:100vh;margin:0;padding:0;background-color:var(--color-bg-app);background-image:var(--gradient-bg-app);color:var(--color-text-primary)}#root{min-height:100vh;display:flex;flex-direction:column}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}a{color:var(--color-accent);text-decoration:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#ffffff3d}.uw-icon{width:1.25rem;height:1.25rem;flex-shrink:0;stroke-width:2}.uw-app-shell{display:grid;min-height:100vh;background-color:var(--color-bg-app);background-image:var(--gradient-bg-app);grid-template-columns:240px minmax(0,1fr)}.uw-app-shell__main{display:flex;flex-direction:column;min-width:0;width:100%}.uw-app-shell__content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-2xl)}.uw-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:var(--spacing-xl);padding:var(--spacing-lg) var(--spacing-md);background-color:var(--color-bg-surface);border-right:1px solid var(--color-border);overflow-y:auto}.uw-sidebar__brand{display:flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm)}.uw-sidebar__logo,.uw-header__logo{display:flex;align-items:center;text-decoration:none}.uw-sidebar__logo-text,.uw-header__logo-text{font-size:1.125rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary);letter-spacing:-.025em}.uw-sidebar__nav{display:flex;flex-direction:column;gap:var(--spacing-2xs)}.uw-sidebar__link{position:relative;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);text-decoration:none}.uw-sidebar__link:hover{color:var(--color-text-primary);background-color:#ffffff0d}.uw-sidebar__link--active{color:var(--color-accent);background-color:var(--color-accent-subtle);font-weight:var(--font-weight-semibold)}.uw-sidebar__link--active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:var(--radius-full);background-color:var(--color-accent)}.uw-sidebar__action-btn{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;margin:var(--spacing-xs) 0;padding:var(--spacing-sm) var(--spacing-md);border:0;border-radius:var(--radius-md);background-color:var(--color-accent);color:var(--color-bg-app);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--shadow-accent);transition:background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.uw-sidebar__action-btn:hover{background-color:var(--color-accent-hover);box-shadow:0 6px 18px #34d39961;transform:translateY(-1px)}.uw-sidebar__action-btn:active{transform:translateY(0)}.uw-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 var(--spacing-lg);background-color:#0b0e11d1;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.uw-header__mobile-brand{display:none}.uw-header__title{margin:0;font-size:var(--font-size-section-title);font-weight:var(--font-weight-semibold)}.uw-header__controls{display:flex;min-width:0;align-items:center;gap:var(--spacing-sm);margin-left:auto}.uw-header__search{display:flex;width:min(360px,42vw);min-width:0;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-input);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uw-header__search input{min-width:0;min-height:38px;padding:8px 10px 8px 12px;border:0;background:transparent;color:var(--color-text-primary);font-size:var(--font-size-secondary)}.uw-header__search input::placeholder{color:var(--color-text-muted);text-overflow:ellipsis}.uw-header__search input:focus{outline:none}.uw-header__search:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.uw-header__search button{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.uw-header__search button:hover{color:var(--color-text-primary);background:#ffffff0f}.uw-header__search button svg{width:18px;height:18px}.uw-header__more-container{position:relative}.uw-more-menu{position:absolute;top:calc(100% + var(--spacing-xs));right:0;z-index:200;min-width:230px;padding:var(--spacing-xs);background-color:var(--glass-bg-elevated);background-image:var(--gradient-glass-card);border:1px solid var(--glass-border-light);border-radius:var(--radius-card);box-shadow:var(--shadow-elevated);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);animation:uwFadeIn .15s ease-out}.uw-more-menu__header{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border-subtle);margin-bottom:var(--spacing-2xs)}.uw-more-menu__title{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.uw-more-menu__items{display:flex;flex-direction:column;gap:var(--spacing-3xs)}.uw-more-menu__item{display:flex;min-height:44px;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-decoration:none;transition:all var(--transition-fast)}.uw-more-menu__item:hover{color:var(--color-text-primary);background-color:#ffffff0f}.uw-more-menu__item--active{color:var(--color-accent);background-color:var(--color-accent-subtle);font-weight:var(--font-weight-semibold)}.uw-more-menu__icon{display:flex;align-items:center;color:inherit}.uw-mobile-nav{display:none;position:fixed;bottom:calc(var(--spacing-sm) + env(safe-area-inset-bottom,0px));left:clamp(8px,4vw,24px);right:clamp(8px,4vw,24px);z-index:100;overflow:visible;background-color:var(--color-bg-surface);background-image:var(--gradient-floating-nav);border:1px solid var(--glass-border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-elevated);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.uw-mobile-nav__bar{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;height:var(--mobile-nav-height);padding:0 var(--spacing-xs)}.uw-mobile-nav__item{position:relative;display:flex;align-items:center;justify-content:center;height:100%;min-height:48px;color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.uw-mobile-nav__item:hover,.uw-mobile-nav__item--active{color:var(--color-accent)}.uw-mobile-nav__item--active:after{content:"";position:absolute;top:6px;left:50%;transform:translate(-50%);width:20px;height:3px;border-radius:var(--radius-full);background-color:var(--color-accent);background-image:var(--gradient-accent-button)}.uw-mobile-nav__item-icon-wrapper{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-md);transition:background-color var(--transition-fast),transform var(--transition-fast)}.uw-mobile-nav__item--active .uw-mobile-nav__item-icon-wrapper{background-color:var(--color-accent-subtle)}.uw-mobile-nav__item:active .uw-mobile-nav__item-icon-wrapper{transform:scale(.95)}.uw-mobile-nav__icon{width:22px;height:22px;stroke-width:2}.uw-mobile-nav__action-btn{display:flex;align-items:center;justify-content:center;height:100%;border:0;background:transparent;cursor:pointer;padding:0}.uw-mobile-nav__action-circle{display:grid;place-items:center;width:48px;height:48px;border-radius:var(--radius-full);background-color:var(--color-accent);color:var(--color-bg-app);box-shadow:var(--shadow-accent);margin-top:-12px;border:3px solid var(--color-bg-app);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.uw-mobile-nav__action-btn:active .uw-mobile-nav__action-circle{transform:scale(.92);box-shadow:0 2px 8px #34d39966}.uw-mobile-nav__icon--prominent{width:26px;height:26px;stroke-width:2.5}@media(max-width:767px){.uw-app-shell{grid-template-columns:1fr}.uw-sidebar{display:none}.uw-header__mobile-brand{display:block}.uw-header{padding:0 clamp(16px,5vw,24px)}.uw-header__mobile-brand{min-width:0}.uw-header__search{width:clamp(108px,40vw,220px)}.uw-header__search input{padding-right:4px;padding-left:10px}.uw-mobile-nav{display:block}.uw-app-shell__content{padding:var(--spacing-md) clamp(16px,5vw,24px) calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,16px) + var(--spacing-2xl))}.uw-app-shell__content>*{min-width:0}}.uw-card{border-radius:var(--radius-card);transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.uw-card--variant-default{background-color:var(--color-bg-card);background-image:var(--gradient-glass-card);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm)}.uw-card--variant-default:hover{background-image:var(--gradient-glass-hover);border-color:var(--glass-border-light)}.uw-card--variant-elevated{background-color:var(--color-bg-elevated);border:1px solid var(--color-border-strong);box-shadow:0 8px 24px #0003}.uw-card--variant-outlined{background-color:transparent;border:1px solid var(--color-border)}.uw-card--variant-subtle{background-color:var(--color-bg-surface);border:1px solid var(--color-border-subtle)}.uw-card--padding-none{padding:0}.uw-card--padding-sm{padding:var(--spacing-sm)}.uw-card--padding-md{padding:var(--spacing-md)}.uw-card--padding-lg{padding:var(--spacing-lg)}.uw-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);border:1px solid transparent;border-radius:var(--radius-control);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.uw-button--full-width{width:100%}.uw-button--sm{padding:6px 12px;font-size:var(--font-size-secondary)}.uw-button--md{padding:10px 16px;font-size:var(--font-size-body)}.uw-button--lg{padding:14px 20px;font-size:var(--font-size-body)}.uw-button--primary{background-color:var(--color-accent);background-image:var(--gradient-accent-button);color:var(--color-bg-app);box-shadow:var(--shadow-accent)}.uw-button--primary:hover:not(:disabled){background-color:var(--color-accent-hover);background-image:var(--gradient-accent-button-hover);transform:translateY(-1px)}.uw-button--secondary{background-color:var(--color-bg-elevated);color:var(--color-text-primary);border-color:var(--color-border)}.uw-button--secondary:hover:not(:disabled){background-color:#ffffff1a;border-color:var(--color-border-strong)}.uw-button--destructive{background-color:var(--color-destructive);color:#fff}.uw-button--destructive:hover:not(:disabled){filter:brightness(.9)}.uw-button--outline{background-color:transparent;color:var(--color-text-primary);border-color:var(--color-border-strong)}.uw-button--outline:hover:not(:disabled){background-color:#ffffff0d}.uw-button--ghost{background-color:transparent;color:var(--color-text-secondary)}.uw-button--ghost:hover:not(:disabled){color:var(--color-text-primary);background-color:#ffffff0d}.uw-button:disabled{opacity:.5;cursor:not-allowed}.uw-icon-button{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-control);border:1px solid transparent;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.uw-icon-button--sm{width:32px;height:32px}.uw-icon-button--md{width:40px;height:40px}.uw-icon-button--lg{width:48px;height:48px}.uw-icon-button--ghost:hover:not(:disabled){color:var(--color-text-primary);background-color:#ffffff0f}.uw-icon-button--secondary{background-color:var(--color-bg-elevated);border-color:var(--color-border)}.uw-icon-button--secondary:hover:not(:disabled){border-color:var(--color-border-strong);color:var(--color-text-primary)}.uw-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.uw-page-header__eyebrow{margin:0 0 var(--spacing-2xs);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em}.uw-page-header__title{margin:0;font-size:var(--font-size-page-title);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.uw-page-header__subtitle{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body);max-width:48ch}.uw-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.uw-section-header__title{margin:0;font-size:var(--font-size-section-title);font-weight:var(--font-weight-semibold)}.uw-section-header__subtitle{margin:var(--spacing-3xs) 0 0;font-size:var(--font-size-secondary);color:var(--color-text-muted)}.uw-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl) var(--spacing-lg);text-align:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-card);background-color:#ffffff03}.uw-empty-state__icon{margin-bottom:var(--spacing-md);color:var(--color-text-muted)}.uw-empty-state__title{margin:0 0 var(--spacing-xs);font-size:var(--font-size-section-title);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.uw-empty-state__description{margin:0 0 var(--spacing-md);font-size:var(--font-size-secondary);color:var(--color-text-secondary);max-width:36ch}.uw-form-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.uw-form-field__label{display:flex;align-items:center;gap:var(--spacing-3xs);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.uw-form-field__required{color:var(--color-expense)}.uw-form-field__error{margin:0;font-size:var(--font-size-caption);color:var(--color-expense)}.uw-form-field__hint{margin:0;font-size:var(--font-size-caption);color:var(--color-text-muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}input,select,textarea{width:100%;padding:10px 14px;border-radius:var(--radius-control);border:1px solid var(--color-border-strong);background-color:var(--color-bg-input);color:var(--color-text-primary);font-size:var(--font-size-body);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}.uw-select{position:relative;width:100%;min-width:0}.uw-select__trigger{display:flex;width:100%;min-height:46px;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:10px 12px 10px 14px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-bg-input);color:var(--color-text-primary);text-align:left;font:inherit;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.uw-select__trigger:hover:not(:disabled){border-color:var(--color-border-focus);background:var(--color-bg-card)}.uw-select__trigger:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.uw-select__trigger:disabled{opacity:.5;cursor:not-allowed}.uw-select__trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uw-select__placeholder{color:var(--color-text-muted)}.uw-select__chevron{width:18px;height:18px;flex:0 0 auto;color:var(--color-text-muted);transition:transform var(--transition-fast)}.uw-select__chevron.is-open{transform:rotate(180deg)}.uw-select__menu{position:absolute;z-index:50;top:calc(100% + 6px);right:0;left:0;max-height:min(240px,45vh);overflow-y:auto;padding:var(--spacing-xs);border:1px solid var(--glass-border-light);border-radius:var(--radius-card);background-color:var(--glass-bg-elevated);background-image:var(--gradient-glass-card);box-shadow:var(--shadow-elevated);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);animation:uwFadeIn .15s ease-out}.uw-select__group+.uw-select__group{margin-top:var(--spacing-xs);padding-top:var(--spacing-xs);border-top:1px solid var(--color-border-subtle)}.uw-select__group-label{display:block;padding:4px var(--spacing-sm);color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}.uw-select__option{display:flex;width:100%;min-height:42px;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:8px var(--spacing-sm);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);text-align:left;font:inherit;font-size:var(--font-size-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.uw-select__option:hover,.uw-select__option:focus-visible{background:#ffffff12;color:var(--color-text-primary);outline:none;transform:translate(1px)}.uw-select__option.is-selected{background:var(--color-accent-subtle);color:var(--color-accent);font-weight:var(--font-weight-medium)}.uw-select__option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uw-select__option svg{width:16px;height:16px;flex:0 0 auto}.dashboard-panel,.account-panel,.charts-panel,.backup-panel,.transaction-panel,.category-panel{width:100%;max-width:800px;margin:0 auto;padding:var(--spacing-xl);border:1px solid var(--color-border);border-radius:var(--radius-card);background-color:var(--color-bg-card)}.dashboard-panel{max-width:1180px;padding:clamp(18px,3vw,32px);border-color:transparent;background:transparent}.dashboard-panel>.uw-page-header{margin-bottom:var(--spacing-lg)}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:var(--spacing-md);align-items:start}.dashboard-primary-column,.dashboard-secondary-column{display:flex;flex-direction:column;gap:var(--spacing-md);min-width:0}.dashboard-section{min-width:0}.dashboard-section .uw-section-header{margin-bottom:var(--spacing-sm)}.dashboard-section .uw-section-header__title{font-size:1rem}.dashboard-section .uw-section-header__subtitle{color:var(--color-text-muted)}.dashboard-total{min-width:0;min-height:148px;display:flex;flex-direction:column;justify-content:space-between;gap:var(--spacing-sm);margin:0;padding:clamp(16px,2.5vw,24px);border:1px solid rgba(52,211,153,.18);border-radius:var(--radius-card);box-shadow:var(--shadow-card);background-color:var(--color-bg-card);background-image:var(--gradient-hero-balance)}.dashboard-total__top,.dashboard-total__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.dashboard-total__label{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium)}.dashboard-total__label svg{width:18px;height:18px;color:var(--color-accent)}.dashboard-total__period,.dashboard-total__footer{color:var(--color-text-muted);font-size:var(--font-size-caption)}.dashboard-total>strong{display:block;min-width:0;overflow-wrap:anywhere;color:var(--color-text-primary);font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.12;letter-spacing:-.03em;font-family:var(--font-family-numeric);font-variant-numeric:tabular-nums}.dashboard-total__flow{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;border-top:1px solid var(--color-border-subtle)}.dashboard-total__flow-item{display:flex;min-width:0;align-items:center;gap:var(--spacing-xs)}.dashboard-total__flow-item.is-expense{justify-content:flex-end;text-align:right}.dashboard-total__flow-icon{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:var(--radius-sm);background:#ffffff0d}.dashboard-total__flow-icon svg{width:16px;height:16px}.dashboard-total__flow-item.is-income .dashboard-total__flow-icon,.dashboard-total__flow-item.is-income strong{color:var(--color-income)}.dashboard-total__flow-item.is-expense .dashboard-total__flow-icon,.dashboard-total__flow-item.is-expense strong{color:var(--color-expense)}.dashboard-total__flow-text{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-3xs)}.dashboard-total__flow-text>span{color:var(--color-text-secondary);font-size:var(--font-size-caption)}.dashboard-total__flow-text>strong{overflow-wrap:anywhere;font-family:var(--font-family-numeric);font-size:var(--font-size-body);font-variant-numeric:tabular-nums;line-height:1.2}.dashboard-total__flow-divider{align-self:stretch;background:var(--color-border-subtle)}.dashboard-total__footer{padding-top:var(--spacing-xs);border-top:1px solid var(--color-border-subtle)}.dashboard-month-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm)}.dashboard-metric{min-width:0;display:flex;flex-direction:column;gap:var(--spacing-2xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast)}.dashboard-metric:hover{border-color:var(--color-border-strong)}.dashboard-metric__label{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.dashboard-metric__icon,.dashboard-udhar-card__icon,.dashboard-account__icon,.dashboard-recent-item__icon{display:grid;flex:0 0 auto;place-items:center}.dashboard-metric__icon{width:32px;height:32px;border-radius:var(--radius-sm);background:#ffffff0d}.dashboard-metric__icon svg{width:17px;height:17px}.dashboard-metric--income .dashboard-metric__icon,.dashboard-metric--income>strong{color:var(--color-income)}.dashboard-metric--expense .dashboard-metric__icon,.dashboard-metric--expense>strong{color:var(--color-expense)}.dashboard-metric>strong{min-width:0;overflow-wrap:anywhere;font-size:clamp(1.15rem,2.5vw,1.45rem);line-height:1.25;font-variant-numeric:tabular-nums}.dashboard-metric__caption{color:var(--color-text-muted);font-size:var(--font-size-caption)}.dashboard-udhar-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast)}.dashboard-udhar-card:hover{border-color:var(--color-border-strong)}.dashboard-udhar-card__icon{width:36px;height:36px;border-radius:var(--radius-sm);color:var(--color-warning);background:#fbbf241a}.dashboard-udhar-card__icon svg{width:18px;height:18px}.dashboard-udhar-card>div{min-width:0;display:flex;flex-direction:column;gap:var(--spacing-2xs)}.dashboard-udhar-card__label,.dashboard-udhar-card__hint{color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.dashboard-udhar-card>div>strong{overflow-wrap:anywhere;font-size:1.15rem;font-variant-numeric:tabular-nums}.dashboard-udhar-card__hint{color:var(--color-text-muted);font-size:var(--font-size-caption)}.dashboard-accounts,.dashboard-recent{display:flex;flex-direction:column;margin-top:0;overflow:hidden;border:1px solid var(--glass-border);border-radius:var(--radius-card);background-color:var(--color-bg-surface);background-image:var(--gradient-glass-card);box-shadow:var(--shadow-sm)}.dashboard-account{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-md);transition:background-color var(--transition-fast)}.dashboard-account:hover{background-color:#ffffff05}.dashboard-account+.dashboard-account,.dashboard-recent-item+.dashboard-recent-item{border-top:1px solid var(--color-border-subtle)}.dashboard-account__identity{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0}.dashboard-account__icon{width:36px;height:36px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-bg-card)}.dashboard-account__icon svg{width:17px;height:17px}.dashboard-account__identity>span:last-child{display:flex;flex-direction:column;min-width:0}.dashboard-account__identity strong{overflow:hidden;color:var(--color-text-primary);font-size:var(--font-size-secondary);text-overflow:ellipsis;white-space:nowrap}.dashboard-account__identity small{color:var(--color-text-muted);font-size:var(--font-size-caption)}.dashboard-account__balance{flex:0 0 auto;max-width:58%;overflow-wrap:anywhere;font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.dashboard-recent-item{display:flex;min-width:0;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-left:0!important;transition:background-color var(--transition-fast)}.dashboard-recent-item:hover{background-color:#ffffff05}.dashboard-recent-item__icon{width:36px;height:36px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-bg-card)}.dashboard-recent-item__icon svg{width:17px;height:17px}.dashboard-recent-item.income .dashboard-recent-item__icon{color:var(--color-income)}.dashboard-recent-item.expense .dashboard-recent-item__icon{color:var(--color-expense)}.dashboard-recent-item.transfer .dashboard-recent-item__icon{color:#7dd3fc}.dashboard-recent-item.udhar .dashboard-recent-item__icon{color:var(--color-warning)}.dashboard-recent-item__details{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--spacing-3xs);min-width:0}.dashboard-recent-item__details>strong{overflow:hidden;color:var(--color-text-primary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.dashboard-recent-item__details>span{overflow:hidden;color:var(--color-text-muted);font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.dashboard-recent-item__amount{flex:0 0 auto;max-width:44%;overflow-wrap:anywhere;text-align:right;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.dashboard-recent-item.income .dashboard-recent-item__amount{color:var(--color-income)}.dashboard-recent-item.transfer .dashboard-recent-item__amount{color:#7dd3fc}.dashboard-recent-item.udhar .dashboard-recent-item__amount{color:var(--color-warning)}.dashboard-empty{padding:var(--spacing-lg) var(--spacing-md);background:var(--color-bg-surface)}.dashboard-empty .uw-empty-state__icon{margin-bottom:var(--spacing-xs)}.dashboard-empty .uw-empty-state__icon svg{width:22px;height:22px}.dashboard-empty .uw-empty-state__title{font-size:var(--font-size-body)}.dashboard-empty .uw-empty-state__description{margin-bottom:0}.dashboard-insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-xs)}.dashboard-insight,.dashboard-insight-categories>div{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-2xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.dashboard-insight>span,.dashboard-insight-categories span{color:var(--color-text-secondary);font-size:var(--font-size-caption)}.dashboard-insight>strong{overflow-wrap:anywhere;font-size:1.05rem;font-variant-numeric:tabular-nums}.dashboard-insight>small,.dashboard-insight-categories small,.dashboard-insights-note{color:var(--color-text-muted);font-size:var(--font-size-caption)}.dashboard-insight-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.dashboard-insight-categories strong{font-size:var(--font-size-secondary);font-variant-numeric:tabular-nums}.dashboard-insight .is-positive,.dashboard-insight-categories .is-positive{color:var(--color-income)}.dashboard-insight .is-negative,.dashboard-insight-categories .is-negative{color:var(--color-expense)}.dashboard-insights-note{margin:var(--spacing-xs) 0 0}.migration-recovery{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--color-bg-app);color:var(--color-text-primary)}.migration-recovery>section{width:min(100%,680px);display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm);padding:clamp(20px,5vw,36px);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-surface)}.migration-recovery h1{margin:0;font-size:var(--font-size-page-title)}.migration-recovery p{margin:0;color:var(--color-text-secondary)}.migration-recovery .migration-recovery-detail{width:100%;overflow-wrap:anywhere;padding:var(--spacing-sm);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-muted);font-family:monospace;font-size:var(--font-size-caption)}.migration-recovery .migration-recovery-warning{width:100%;padding:var(--spacing-sm) var(--spacing-md);border-left:3px solid #fbbf24;border-radius:var(--radius-sm);background:#fbbf2412;font-size:var(--font-size-secondary)}.migration-recovery button{min-height:44px;padding:10px 16px;border:0;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.migration-recovery button:disabled{opacity:.6;cursor:wait}@media(max-width:900px){.dashboard-layout{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:var(--spacing-md)}.dashboard-panel{padding:var(--spacing-lg)}}@media(max-width:700px){.dashboard-layout{grid-template-columns:minmax(0,1fr);gap:var(--spacing-md)}.dashboard-primary-column,.dashboard-secondary-column{display:contents}.dashboard-primary-balance{order:0;min-height:0}.dashboard-month-section{order:1}.dashboard-insights-section{order:2}.dashboard-udhar-section{order:3}.dashboard-accounts-section{order:4}.dashboard-recent-section{order:5}.dashboard-panel{padding:var(--spacing-md) 0}.dashboard-total>strong{font-size:clamp(1.75rem,8vw,2.3rem)}.dashboard-metric__caption{display:none}.dashboard-recent-item__amount{font-size:var(--font-size-secondary)}}@media(max-width:380px){.dashboard-month-grid{gap:var(--spacing-xs)}.dashboard-insights-grid,.dashboard-insight-categories{grid-template-columns:minmax(0,1fr)}.dashboard-metric{padding:var(--spacing-sm)}.dashboard-recent-item{gap:var(--spacing-xs);padding:var(--spacing-sm)}.dashboard-recent-item__amount{max-width:44%;font-size:var(--font-size-secondary)}}.transaction-panel{max-width:1040px;padding:clamp(18px,3vw,32px)}.transaction-page-header{margin-bottom:var(--spacing-lg)}.transaction-page-header .eyebrow{margin:0 0 var(--spacing-2xs);color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.transaction-page-header h1{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-tight)}.transaction-page-header .foundation-copy{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.transaction-form-section{padding:clamp(16px,2.5vw,24px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface)}.transaction-section-heading{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.transaction-section-icon{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-accent);background:var(--color-accent-subtle)}.transaction-section-icon svg{width:19px;height:19px}.transaction-section-heading h2,.transaction-history-heading h2{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-tight)}.transaction-section-heading p,.transaction-history-heading p{margin:var(--spacing-2xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.transaction-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.transaction-type-fieldset{min-width:0;margin:0;padding:0;border:0}.transaction-type-fieldset legend,.transaction-form label{color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.transaction-type-fieldset legend{margin-bottom:var(--spacing-xs)}.transaction-type-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-xs)}.transaction-type-option{display:inline-flex;min-width:0;min-height:44px;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-input);color:var(--color-text-secondary);font:inherit;cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.transaction-type-option>span{display:grid;place-items:center}.transaction-type-option svg{width:17px;height:17px}.transaction-type-option:hover{border-color:var(--color-border-strong);color:var(--color-text-primary)}.transaction-type-option.is-selected{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-accent)}.transaction-type-option.is-selected.is-income{border-color:#34d39980;background:#34d3991a;color:var(--color-income)}.transaction-type-option.is-selected.is-expense{border-color:#f8717180;background:#f871711a;color:var(--color-expense)}.transaction-type-option.is-selected.is-transfer{border-color:#7dd3fc73;background:#38bdf81a;color:#7dd3fc}.transaction-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.transaction-form-grid label{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs)}.transaction-form-grid input,.transaction-form-grid select{min-width:0;min-height:46px;margin:0}.transaction-form-grid .transaction-amount-field{color:var(--color-text-primary)}.transaction-currency,.transaction-optional{color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular)}.transaction-amount-field{position:relative}.transaction-amount-field .transaction-currency{position:absolute;top:0;right:0}.transaction-form-grid input.transaction-amount-input{height:54px;padding:var(--spacing-sm);font-size:1.35rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.transaction-note-field{grid-column:1 / -1}.transaction-error{margin:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);color:#fca5a5;background:#f8717114;font-size:var(--font-size-secondary)}.transaction-form-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding-top:var(--spacing-xs)}.transaction-form-actions button{min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font-weight:var(--font-weight-semibold);cursor:pointer}.transaction-form-actions button:hover{background:var(--color-accent-hover)}.transaction-form-actions button.button-secondary{border-color:var(--color-border-strong);background:var(--color-bg-elevated);color:var(--color-text-primary)}.transaction-history-section{margin-top:var(--spacing-xl)}.transaction-history-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.transaction-history-toggle{flex:0 0 auto;min-height:40px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-secondary);cursor:pointer}.transaction-history-toggle:hover{border-color:var(--color-border-strong);background:var(--color-bg-card-hover)}.transaction-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,.55fr) minmax(180px,.7fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.transaction-search{position:relative;display:flex;min-width:0;align-items:center}.transaction-search>svg{position:absolute;left:12px;width:17px;height:17px;color:var(--color-text-muted);pointer-events:none}.transaction-search input,.transaction-filter select{min-width:0;height:44px;margin:0;background-color:var(--color-bg-input)}.transaction-filter .uw-select__trigger{min-height:44px;height:44px}.transaction-search input{padding-left:38px}.transaction-filter{min-width:0}.transaction-panel .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.transaction-list{display:flex;flex-direction:column;overflow:visible;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.transaction-row{position:relative;display:flex;min-width:0;min-height:76px;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);transition:background-color var(--transition-fast)}.transaction-row:hover{background-color:#ffffff05}.transaction-row+.transaction-row{border-top:1px solid var(--color-border-subtle)}.transaction-row-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-bg-card)}.transaction-row-icon svg{width:18px;height:18px}.transaction-row.income .transaction-row-icon,.transaction-row-amount.is-income{color:var(--color-income)}.transaction-row.expense .transaction-row-icon,.transaction-row-amount.is-expense{color:var(--color-expense)}.transaction-row.transfer .transaction-row-icon,.transaction-row-amount.is-transfer{color:#7dd3fc}.transaction-row.udhar .transaction-row-icon,.transaction-row-amount.is-udhar{color:var(--color-warning)}.transaction-row-main{flex:1 1 auto;min-width:0}.transaction-row-type{display:block;margin-bottom:var(--spacing-3xs);color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.transaction-row-main h3{overflow:hidden;margin:0;color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.transaction-row-main p{overflow:hidden;margin:var(--spacing-3xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.transaction-row-amount{flex:0 0 auto;max-width:32%;overflow-wrap:anywhere;text-align:right;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.transaction-row-actions{position:relative;flex:0 0 auto}.transaction-row-actions summary{display:grid;width:44px;height:44px;place-items:center;border:1px solid transparent;border-radius:var(--radius-control);color:var(--color-text-muted);cursor:pointer;list-style:none;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.transaction-row-actions summary::-webkit-details-marker{display:none}.transaction-row-actions summary svg{width:20px;height:20px}.transaction-row-actions summary:hover,.transaction-row-actions[open] summary{border-color:var(--color-border);background:var(--color-bg-card);color:var(--color-text-primary)}.transaction-action-menu{position:absolute;z-index:50;top:calc(100% + 4px);right:0;display:flex;min-width:140px;flex-direction:column;gap:2px;padding:var(--spacing-xs);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg-elevated);box-shadow:var(--shadow-elevated);animation:uwFadeIn .15s ease-out}.transaction-action-menu button{min-height:40px;padding:8px 12px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-primary);text-align:left;font:inherit;font-size:var(--font-size-secondary);cursor:pointer;transition:background-color var(--transition-fast)}.transaction-action-menu button:hover{background:#ffffff12}.transaction-action-menu button.danger{color:#fca5a5}.transaction-empty{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md);text-align:center}.transaction-empty>svg{width:24px;height:24px;margin-bottom:var(--spacing-sm);color:var(--color-text-muted)}.transaction-empty h3{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.transaction-empty p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}@media(max-width:700px){.transaction-panel{padding:var(--spacing-md) 0 calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px))}.transaction-page-header,.transaction-history-section{padding-right:2px;padding-left:2px}.transaction-form-section{padding:var(--spacing-md)}.transaction-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-search{grid-column:1 / -1}.transaction-row{min-height:70px;gap:var(--spacing-sm);padding:var(--spacing-sm)}.transaction-row-amount{max-width:35%;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}}@media(max-width:430px){.transaction-form-grid{grid-template-columns:minmax(0,1fr);gap:var(--spacing-sm)}.transaction-type-option{flex-direction:column;gap:var(--spacing-3xs);min-height:48px;padding:var(--spacing-xs) var(--spacing-2xs);font-size:var(--font-size-caption)}.transaction-row{gap:var(--spacing-xs)}.transaction-row-icon{width:34px;height:34px}.transaction-row-main h3{font-size:var(--font-size-secondary)}.transaction-row-amount{max-width:36%;font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold)}.transaction-row-actions summary{width:40px;height:44px}.transaction-history-heading{align-items:flex-start}}.calendar-panel{max-width:1040px;padding:clamp(18px,3vw,32px)}.calendar-page-header{margin-bottom:var(--spacing-lg)}.calendar-page-header .eyebrow{margin:0 0 var(--spacing-2xs);color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.calendar-page-header h1{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-tight)}.calendar-page-header p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.calendar-month-section,.calendar-selected-section{padding:clamp(16px,2.5vw,24px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface)}.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.calendar-nav>div{min-width:0;text-align:center}.calendar-nav h2{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-tight)}.calendar-nav span{display:block;margin-top:var(--spacing-3xs);color:var(--color-text-muted);font-size:var(--font-size-caption)}.calendar-nav-button{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.calendar-nav-button:hover{border-color:var(--color-border-strong);background:var(--color-bg-card-hover)}.calendar-nav-button svg{width:19px;height:19px}.calendar-month-summary,.calendar-day-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.calendar-summary-card{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.calendar-summary-card>span{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.calendar-summary-card svg{width:17px;height:17px}.calendar-summary-card>strong{min-width:0;overflow-wrap:anywhere;font-size:clamp(1.05rem,2.5vw,1.35rem);font-variant-numeric:tabular-nums}.calendar-summary-card>small{color:var(--color-text-muted);font-size:var(--font-size-caption)}.calendar-summary-card--income svg,.calendar-summary-card--income>strong{color:var(--color-income)}.calendar-summary-card--expense svg,.calendar-summary-card--expense>strong{color:var(--color-expense)}.calendar-surface{padding:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm);overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-weekday{display:grid;min-width:0;min-height:30px;place-items:center;color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-transform:uppercase}.calendar-day,.calendar-day-blank{position:relative;display:grid;min-width:0;min-height:clamp(44px,7vw,68px);place-items:center;padding:var(--spacing-2xs);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-secondary);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.calendar-day:hover{border-color:var(--color-border);background:#ffffff0d;color:var(--color-text-primary)}.calendar-day.today{color:var(--color-accent);font-weight:var(--font-weight-bold)}.calendar-day.today:not(.selected){border-color:#34d39947}.calendar-day.selected{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.calendar-day i{position:absolute;bottom:7px;width:4px;height:4px;border-radius:var(--radius-full);background:var(--color-warning)}.calendar-day.selected i{background:var(--color-accent)}.calendar-day em{position:absolute;top:4px;left:50%;transform:translate(-50%);color:var(--color-accent);font-size:8px;font-style:normal;font-weight:var(--font-weight-semibold);line-height:1}.calendar-selected-section{margin-top:var(--spacing-lg)}.calendar-selected-heading{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.calendar-selected-icon{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-accent);background:var(--color-accent-subtle)}.calendar-selected-icon svg{width:19px;height:19px}.calendar-selected-heading h2{margin:0;font-size:var(--font-size-section-title)}.calendar-selected-heading p{margin:var(--spacing-2xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.calendar-day-summary{margin-bottom:var(--spacing-md)}.calendar-day-summary .calendar-summary-card{padding:var(--spacing-sm) var(--spacing-md)}.calendar-items{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.calendar-transaction-row{display:flex;min-width:0;min-height:68px;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:background-color var(--transition-fast)}.calendar-transaction-row:hover{background-color:#ffffff05}.calendar-transaction-row+.calendar-transaction-row{border-top:1px solid var(--color-border-subtle)}.calendar-transaction-icon{display:grid;width:35px;height:35px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary)}.calendar-transaction-icon svg{width:16px;height:16px}.calendar-transaction-row.income .calendar-transaction-icon,.calendar-transaction-row>strong.income{color:var(--color-income)}.calendar-transaction-row.expense .calendar-transaction-icon,.calendar-transaction-row>strong.expense{color:var(--color-expense)}.calendar-transaction-row.transfer .calendar-transaction-icon,.calendar-transaction-row>strong.transfer{color:#7dd3fc}.calendar-transaction-row>div{flex:1 1 auto;min-width:0}.calendar-transaction-row>div>span{display:block;color:var(--color-text-muted);font-size:var(--font-size-caption)}.calendar-transaction-row h3{overflow:hidden;margin:var(--spacing-3xs) 0 0;color:var(--color-text-primary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.calendar-transaction-row p{margin:var(--spacing-3xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption)}.calendar-transaction-row>strong{flex:0 0 auto;max-width:32%;overflow-wrap:anywhere;text-align:right;font-size:var(--font-size-secondary);font-variant-numeric:tabular-nums}.calendar-empty{display:flex;min-height:150px;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);text-align:center}.calendar-empty>svg{width:23px;height:23px;margin-bottom:var(--spacing-sm);color:var(--color-text-muted)}.calendar-empty h3{margin:0;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.calendar-empty p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.calendar-analytics-note{margin:var(--spacing-md) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-normal)}@media(min-width:900px){.calendar-panel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:var(--spacing-lg);align-items:start}.calendar-page-header{grid-column:1 / -1;margin-bottom:0}.calendar-selected-section{margin-top:0}.calendar-month-summary{margin-bottom:var(--spacing-lg)}}@media(max-width:520px){.calendar-panel{padding:var(--spacing-md) 0 calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px))}.calendar-month-section,.calendar-selected-section{padding:var(--spacing-md)}.calendar-day,.calendar-day-blank{min-height:43px;font-size:var(--font-size-caption)}.calendar-weekday{min-height:25px;font-size:10px}.calendar-day em{display:none}.calendar-day i{bottom:5px}.calendar-transaction-row{padding:var(--spacing-sm)}.calendar-transaction-row>strong{max-width:36%;font-size:var(--font-size-caption)}}.charts-panel{max-width:1120px;padding:clamp(18px,3vw,32px)}.charts-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.charts-page-header .eyebrow{margin:0 0 var(--spacing-2xs);color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.charts-page-header h1{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-tight)}.charts-page-header>div>p:last-child{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.chart-periods{display:flex;flex:0 1 auto;gap:var(--spacing-2xs);padding:3px;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-surface);overflow-x:auto}.chart-periods button{min-height:34px;flex:0 0 auto;padding:6px 10px;border:0;border-radius:calc(var(--radius-control) - 3px);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.chart-periods button:hover{color:var(--color-text-primary);background:#ffffff0d}.chart-periods button.is-selected{background:var(--color-accent-subtle);color:var(--color-accent)}.chart-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:var(--spacing-md);overflow:hidden;border:1px solid var(--glass-border-light);border-radius:var(--radius-card);background-color:var(--color-bg-surface);background-image:linear-gradient(135deg,#1d232deb,#0d1f1fcc);box-shadow:var(--shadow-card)}.chart-summary-card{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-2xs);padding:var(--spacing-sm) var(--spacing-md);border:0;border-radius:0;background:transparent;box-shadow:none}.chart-summary-card+.chart-summary-card{border-left:1px solid var(--color-border-subtle)}.chart-summary-card>span{display:inline-flex;align-items:center;gap:var(--spacing-xs);min-width:0;color:var(--color-text-secondary);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.chart-summary-card svg{width:17px;height:17px}.chart-summary-card>strong{min-width:0;overflow-wrap:anywhere;color:var(--color-text-primary);font-size:clamp(1.05rem,2.4vw,1.35rem);font-variant-numeric:tabular-nums}.chart-summary-card>small{color:var(--color-text-muted);font-size:var(--font-size-caption)}.chart-summary-card--income{background-image:linear-gradient(135deg,rgba(20,184,166,.12),transparent 72%)}.chart-summary-card--expense{background-image:linear-gradient(135deg,rgba(248,113,113,.12),transparent 72%)}.chart-summary-card--net{background-image:linear-gradient(135deg,rgba(34,211,238,.12),transparent 72%)}.chart-summary-card--income svg,.chart-summary-card--income>strong{color:var(--color-income)}.chart-summary-card--expense svg,.chart-summary-card--expense>strong{color:var(--color-expense)}.chart-summary-card--net svg,.chart-summary-card--net>strong{color:#22d3ee}.chart-card{min-width:0;padding:clamp(16px,2.5vw,24px);border:1px solid var(--glass-border);border-radius:var(--radius-card);background-color:var(--color-bg-surface);background-image:var(--gradient-glass-card);box-shadow:var(--shadow-card)}.chart-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.chart-card-heading h2{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-tight)}.chart-card-heading p{margin:var(--spacing-2xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.chart-card-legend{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-caption);white-space:nowrap}.chart-card-legend i{width:8px;height:8px;border-radius:var(--radius-full)}.chart-card-legend__income{margin-left:var(--spacing-xs);background:var(--color-income)}.chart-card-legend__expense{margin-left:var(--spacing-sm);background:var(--color-expense)}.trend-chart{min-width:0}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.chart-card--category{display:flex;min-height:365px;flex-direction:column}.pie-chart{flex:0 0 auto;min-width:0}.chart-legend{display:flex;flex-direction:column;gap:var(--spacing-2xs);margin-top:auto}.chart-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:var(--spacing-xs);min-height:28px;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.chart-legend i{width:8px;height:8px;border-radius:var(--radius-full)}.chart-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-legend strong{padding-left:var(--spacing-xs);color:var(--color-text-primary);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums}.charts-empty{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);text-align:center}.charts-empty>svg{width:25px;height:25px;margin-bottom:var(--spacing-sm);color:var(--color-text-muted)}.charts-empty h2{margin:0;font-size:var(--font-size-section-title)}.charts-empty p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.chart-card .charts-empty{flex:1 1 auto;min-height:210px;border:0;background:var(--color-bg-card)}.charts-analytics-note{margin:var(--spacing-md) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-normal)}@media(max-width:760px){.charts-panel{padding:var(--spacing-md) 0 calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px))}.charts-page-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.chart-periods{width:100%;max-width:100%}.chart-summary{gap:0}.chart-grid{gap:var(--spacing-md);margin-top:var(--spacing-md)}}@media(max-width:520px){.chart-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-summary-card{padding:var(--spacing-sm) var(--spacing-xs)}.chart-summary-card>span{gap:var(--spacing-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-summary-card svg{width:14px;height:14px;flex:0 0 auto}.chart-summary-card>strong{font-size:clamp(.94rem,3.8vw,1.08rem)}.chart-summary-card>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.chart-grid{grid-template-columns:minmax(0,1fr)}.chart-card{padding:var(--spacing-md)}.chart-card-heading{gap:var(--spacing-sm)}.chart-card-legend{flex-wrap:wrap;justify-content:flex-end}.chart-card-legend__expense{margin-left:var(--spacing-xs)}.chart-card--category{min-height:340px}}@media(max-width:379px){.chart-summary{grid-template-columns:minmax(0,1fr)}.chart-summary-card{padding:var(--spacing-sm) var(--spacing-md)}.chart-summary-card+.chart-summary-card{border-top:1px solid var(--color-border-subtle);border-left:0}}.debt-panel{max-width:1040px;padding:clamp(18px,3vw,32px)}.debt-page-header{margin-bottom:var(--spacing-lg)}.debt-page-header .eyebrow{margin:0 0 var(--spacing-2xs);color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.debt-page-header h1{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-tight)}.debt-page-header p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.debt-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.debt-summary-card{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.debt-summary-card>span{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.debt-summary-card svg{width:17px;height:17px}.debt-summary-card>strong{min-width:0;overflow-wrap:anywhere;color:var(--color-text-primary);font-size:clamp(1.15rem,2.6vw,1.45rem);font-variant-numeric:tabular-nums}.debt-summary-card>small{color:var(--color-text-muted);font-size:var(--font-size-caption)}.debt-summary-card--payable svg,.debt-summary-card--payable>strong{color:var(--color-warning)}.debt-summary-card--receivable svg,.debt-summary-card--receivable>strong{color:var(--color-income)}.debt-form-section{padding:clamp(16px,2.5vw,24px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface)}.debt-section-heading{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.debt-section-heading>span{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-accent);background:var(--color-accent-subtle)}.debt-section-heading svg{width:19px;height:19px}.debt-section-heading h2,.debt-list-heading h2{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-tight)}.debt-section-heading p,.debt-list-heading p{margin:var(--spacing-2xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.debt-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.debt-direction-fieldset{min-width:0;margin:0;padding:0;border:0}.debt-direction-fieldset legend,.debt-form-grid label{color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.debt-direction-fieldset legend{margin-bottom:var(--spacing-xs)}.debt-direction-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-xs)}.debt-direction-option{display:flex;min-width:0;min-height:58px;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-input);color:var(--color-text-secondary);text-align:left;font:inherit;cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.debt-direction-option>span:first-child{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:var(--radius-sm);background:#ffffff0a}.debt-direction-option svg{width:17px;height:17px}.debt-direction-option>span:last-child{display:flex;min-width:0;flex-direction:column;gap:1px}.debt-direction-option strong{overflow:hidden;color:inherit;font-size:var(--font-size-secondary);text-overflow:ellipsis;white-space:nowrap}.debt-direction-option small{color:var(--color-text-muted);font-size:var(--font-size-caption)}.debt-direction-option:hover{border-color:var(--color-border-strong);color:var(--color-text-primary)}.debt-direction-option.is-selected.is-payable{border-color:#fbbf2480;background:#fbbf2417;color:var(--color-warning)}.debt-direction-option.is-selected.is-receivable{border-color:#34d39980;background:#34d39917;color:var(--color-income)}.debt-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.debt-form-grid label{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs)}.debt-form-grid input,.debt-form-grid select{min-width:0;min-height:46px;margin:0}.debt-amount-field{position:relative;color:var(--color-text-primary)!important}.debt-amount-field>span{position:absolute;top:0;right:0;color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular)}.debt-amount-field input{height:54px;padding:var(--spacing-sm);font-size:1.35rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.debt-form-grid label:not(.debt-amount-field)>span{color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular)}.debt-note-field{grid-column:1 / -1}.debt-error{margin:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);color:#fca5a5;background:#f8717114;font-size:var(--font-size-secondary)}.debt-form-actions{padding-top:var(--spacing-xs)}.debt-form-actions button{min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.debt-form-actions button:hover{background:var(--color-accent-hover)}.debt-list-section{margin-top:var(--spacing-xl)}.debt-list-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.debt-list-heading>span{flex:0 0 auto;padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--font-size-caption)}.debt-list{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.debt-row{display:flex;min-width:0;min-height:86px;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);transition:background-color var(--transition-fast)}.debt-row:hover{background:var(--color-bg-card-hover)}.debt-row+.debt-row{border-top:1px solid var(--color-border-subtle)}.debt-row-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-bg-card)}.debt-row-icon svg{width:18px;height:18px}.debt-row.payable .debt-row-icon{color:var(--color-warning)}.debt-row.receivable .debt-row-icon{color:var(--color-income)}.debt-row-main{flex:1 1 auto;min-width:0}.debt-row-direction{display:block;margin-bottom:var(--spacing-3xs);color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.debt-row-main h3{overflow:hidden;margin:0;color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.debt-row-main p{overflow:hidden;margin:var(--spacing-3xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.debt-row-side{display:flex;flex:0 0 auto;align-items:flex-end;flex-direction:column;gap:var(--spacing-xs);max-width:36%}.debt-row-side>strong{overflow-wrap:anywhere;color:var(--color-text-primary);text-align:right;font-size:var(--font-size-body);font-variant-numeric:tabular-nums}.debt-action{min-height:36px;padding:6px 12px;border:1px solid currentColor;border-radius:var(--radius-control);background:transparent;font:inherit;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.debt-action:hover{background:#ffffff0f}.debt-action:active{transform:scale(.98)}.debt-action--payable{color:var(--color-warning)}.debt-action--receivable{color:var(--color-income)}.debt-empty{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md);text-align:center}.debt-empty>svg{width:25px;height:25px;margin-bottom:var(--spacing-sm);color:var(--color-text-muted)}.debt-empty h3{margin:0;font-size:var(--font-size-body)}.debt-empty p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.debt-list-note{display:flex;align-items:flex-start;gap:var(--spacing-xs);margin:var(--spacing-md) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-normal)}.debt-list-note svg{width:15px;height:15px;flex:0 0 auto;margin-top:1px}@media(min-width:900px){.debt-panel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:var(--spacing-lg);align-items:start}.debt-page-header,.debt-summary{grid-column:1 / -1}.debt-list-section{margin-top:0}}@media(max-width:520px){.debt-panel{padding:var(--spacing-md) 0 calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px))}.debt-form-section{padding:var(--spacing-md)}.debt-form-grid{grid-template-columns:minmax(0,1fr);gap:var(--spacing-sm)}.debt-note-field{grid-column:auto}.debt-row{min-height:78px;gap:var(--spacing-xs);padding:var(--spacing-sm)}.debt-row-icon{width:33px;height:33px}.debt-row-main h3{font-size:var(--font-size-secondary)}.debt-row-main p{max-width:none}.debt-row-side{max-width:40%}.debt-row-side>strong{font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold)}}.recurring-panel{max-width:1080px;padding:clamp(18px,3vw,32px)}.recurring-page-header{margin-bottom:var(--spacing-lg)}.recurring-page-header .eyebrow{margin:0 0 var(--spacing-2xs);color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.recurring-page-header h1{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-tight)}.recurring-page-header p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.recurring-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.recurring-summary article{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.recurring-summary span{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.recurring-summary svg{width:17px;height:17px;color:var(--color-accent)}.recurring-summary strong{color:var(--color-text-primary);font-size:1.4rem;font-variant-numeric:tabular-nums}.recurring-summary small{color:var(--color-text-muted);font-size:var(--font-size-caption)}.recurring-summary .has-overdue{border-color:#fbbf2452}.recurring-summary .has-overdue svg,.recurring-summary .has-overdue strong{color:var(--color-warning)}.recurring-form-section{padding:clamp(16px,2.5vw,24px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface)}.recurring-section-heading{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.recurring-section-heading>span{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-accent);background:var(--color-accent-subtle)}.recurring-section-heading svg{width:19px;height:19px}.recurring-section-heading h2,.recurring-list-heading h2{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-tight)}.recurring-section-heading p,.recurring-list-heading p{margin:var(--spacing-2xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.recurring-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.recurring-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.recurring-form-grid label{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.recurring-form-grid input,.recurring-form-grid select{min-width:0;min-height:46px;margin:0}.recurring-name-field{grid-column:1 / -1}.recurring-amount-field{position:relative;color:var(--color-text-primary)!important}.recurring-amount-field>span{position:absolute;top:0;right:0;color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular)}.recurring-amount-field input{height:54px;padding:var(--spacing-sm);font-size:1.35rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.recurring-error{margin:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);color:#fca5a5;background:#f8717114;font-size:var(--font-size-secondary)}.recurring-form-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding-top:var(--spacing-xs)}.recurring-form-actions button{min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.recurring-form-actions button:hover{background:var(--color-accent-hover)}.recurring-form-actions .button-secondary{border-color:var(--color-border-strong);background:var(--color-bg-elevated);color:var(--color-text-primary)}.recurring-list-section{margin-top:var(--spacing-xl)}.recurring-list-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.recurring-list-heading>span{flex:0 0 auto;padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--font-size-caption)}.recurring-list{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.recurring-row{display:flex;min-width:0;min-height:92px;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);transition:background-color var(--transition-fast)}.recurring-row:hover{background:var(--color-bg-card-hover)}.recurring-row+.recurring-row{border-top:1px solid var(--color-border-subtle)}.recurring-row.overdue{background:#fbbf2406}.recurring-row.overdue:hover{background:#fbbf240f}.recurring-row-icon{display:grid;width:39px;height:39px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-accent);background:var(--color-bg-card)}.recurring-row.overdue .recurring-row-icon{color:var(--color-warning);border-color:#fbbf2440}.recurring-row-icon svg{width:18px;height:18px}.recurring-row-main{flex:1 1 auto;min-width:0}.recurring-row-status{display:block;margin-bottom:var(--spacing-3xs);color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.recurring-row.overdue .recurring-row-status{color:var(--color-warning)}.recurring-row-main h3{overflow:hidden;margin:0;color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.recurring-row-main p{overflow:hidden;margin:var(--spacing-3xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.recurring-row-side{display:flex;flex:0 0 auto;align-items:flex-end;flex-direction:column;gap:var(--spacing-xs);max-width:42%}.recurring-row-side>strong{overflow-wrap:anywhere;color:var(--color-text-primary);text-align:right;font-size:var(--font-size-body);font-variant-numeric:tabular-nums}.recurring-row-actions{display:flex;align-items:center;gap:var(--spacing-2xs)}.recurring-pay-button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border:1px solid rgba(52,211,153,.4);border-radius:var(--radius-control);background:var(--color-accent-subtle);color:var(--color-accent);font:inherit;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer}.recurring-pay-button:hover:not(:disabled){background:#34d3992e}.recurring-pay-button:disabled{opacity:.55;cursor:wait}.recurring-pay-button svg{width:15px;height:15px}.recurring-icon-button{display:grid;width:36px;height:36px;place-items:center;padding:0;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--color-text-secondary);cursor:pointer}.recurring-icon-button:hover{border-color:var(--color-border);background:var(--color-bg-card);color:var(--color-text-primary)}.recurring-icon-button--archive:hover{color:#fca5a5}.recurring-icon-button svg{width:17px;height:17px}.recurring-empty{display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md);text-align:center}.recurring-empty>svg{width:25px;height:25px;margin-bottom:var(--spacing-sm);color:var(--color-text-muted)}.recurring-empty h3{margin:0;font-size:var(--font-size-body)}.recurring-empty p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.recurring-list-note{display:flex;align-items:flex-start;gap:var(--spacing-xs);margin:var(--spacing-md) 0 0;color:var(--color-text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-normal)}.recurring-list-note svg{width:15px;height:15px;flex:0 0 auto;margin-top:1px}@media(min-width:920px){.recurring-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.95fr);gap:var(--spacing-lg);align-items:start}.recurring-page-header,.recurring-summary{grid-column:1 / -1}.recurring-list-section{margin-top:0}}@media(max-width:560px){.recurring-panel{padding:var(--spacing-md) 0 calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px))}.recurring-summary{gap:var(--spacing-xs)}.recurring-summary article{padding:var(--spacing-sm)}.recurring-summary span{font-size:var(--font-size-caption)}.recurring-summary strong{font-size:1.1rem}.recurring-summary small{display:none}.recurring-form-section{padding:var(--spacing-md)}.recurring-form-grid{grid-template-columns:minmax(0,1fr);gap:var(--spacing-sm)}.recurring-name-field{grid-column:auto}.recurring-row{display:grid;grid-template-columns:33px minmax(0,1fr) max-content;min-height:0;align-items:start;gap:var(--spacing-xs);padding:var(--spacing-sm)}.recurring-row-icon{width:33px;height:33px}.recurring-row-main h3{font-size:var(--font-size-secondary)}.recurring-row-main p{max-width:none}.recurring-row-side{display:contents}.recurring-row-side>strong{grid-column:3;grid-row:1;align-self:start;font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold);white-space:nowrap}.recurring-row-actions{display:grid;grid-column:1 / -1;grid-row:2;grid-template-columns:minmax(0,1fr) 36px 36px;width:100%;gap:var(--spacing-xs);margin-top:var(--spacing-2xs)}.recurring-pay-button{width:100%;min-width:0;padding:7px 10px}.recurring-icon-button{width:36px;height:36px}}.accounts-panel,.category-panel,.settings-panel{max-width:1040px;padding:clamp(18px,3vw,32px)}.accounts-form-section,.category-form-section,.settings-group{padding:clamp(16px,2.5vw,24px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface)}.accounts-section-heading,.category-section-heading,.settings-group-heading{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.accounts-section-heading>span,.category-section-heading>span,.settings-group-heading>span{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-accent);background:var(--color-accent-subtle)}.accounts-section-heading svg,.category-section-heading svg,.settings-group-heading svg{width:19px;height:19px}.accounts-section-heading h2,.accounts-list-heading h2,.category-section-heading h2,.category-list-heading h2,.settings-group-heading h2{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-tight)}.accounts-section-heading p,.accounts-list-heading p,.category-section-heading p,.category-list-heading p,.settings-group-heading p{margin:var(--spacing-2xs) 0 0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.accounts-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.accounts-form label{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.accounts-form input,.accounts-form select{min-height:46px;margin:0}.accounts-name-field{grid-column:1 / -1}.accounts-balance-field{position:relative}.accounts-balance-field input{height:52px;font-size:1.25rem;font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.accounts-form .form-error{grid-column:1 / -1;margin:0}.accounts-form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.accounts-form-actions button{min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.accounts-form-actions .button-secondary{border-color:var(--color-border-strong);background:var(--color-bg-elevated);color:var(--color-text-primary)}.accounts-list-section,.category-list-section{margin-top:var(--spacing-xl)}.accounts-list-heading,.category-list-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.accounts-list-heading>span,.category-list-heading>span{flex:0 0 auto;padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--font-size-caption)}.accounts-list{display:flex;flex-direction:column;margin-top:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.accounts-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-md);transition:background-color var(--transition-fast)}.accounts-row:hover{background:var(--color-bg-card-hover)}.accounts-row+.accounts-row{border-top:1px solid var(--color-border-subtle)}.accounts-row-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-bg-card)}.accounts-row--cash .accounts-row-icon{color:var(--color-accent)}.accounts-row--bank .accounts-row-icon{color:#7dd3fc}.accounts-row--udhar .accounts-row-icon{color:var(--color-warning)}.accounts-row-icon svg{width:18px;height:18px}.accounts-row-main{flex:1 1 auto;min-width:0}.accounts-row-main h2{overflow:hidden;margin:var(--spacing-3xs) 0 0;color:var(--color-text-primary);font-size:var(--font-size-body);text-overflow:ellipsis;white-space:nowrap}.accounts-row-side{flex:0 0 auto;align-items:flex-end;gap:var(--spacing-xs);max-width:46%}.accounts-row-side>strong{overflow-wrap:anywhere;text-align:right;font-size:var(--font-size-body);font-variant-numeric:tabular-nums}.accounts-row-side>div{display:flex;gap:var(--spacing-2xs)}.accounts-icon-button{display:grid;width:36px;height:36px;place-items:center;padding:0;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--color-text-secondary);cursor:pointer}.accounts-icon-button:hover{border-color:var(--color-border);background:var(--color-bg-card);color:var(--color-text-primary)}.accounts-icon-button--archive:hover{color:#fca5a5}.accounts-icon-button svg{width:17px;height:17px}.accounts-empty{border:0;background:transparent}.category-page-header{margin-bottom:var(--spacing-lg)}.category-page-header .eyebrow,.settings-page-header .eyebrow{margin:0 0 var(--spacing-2xs);color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.category-page-header h1,.settings-page-header h1{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-tight)}.category-page-header p,.settings-page-header p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-body)}.category-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.category-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.category-form-grid label{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.category-form-grid input,.category-form-grid select{min-height:46px;margin:0}.category-name-field{grid-column:1 / -1}.category-error{margin:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);color:#fca5a5;background:#f8717114;font-size:var(--font-size-secondary)}.category-form-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.category-form-actions button{min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.category-form-actions .button-secondary{border-color:var(--color-border-strong);background:var(--color-bg-elevated);color:var(--color-text-primary)}.category-list-toggle{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer}.category-list-toggle:hover{border-color:var(--color-border-strong);background:var(--color-bg-card-hover);color:var(--color-text-primary)}.category-list-toggle svg{width:18px;height:18px}.category-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.category-group{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.category-group>h3{display:flex;align-items:center;gap:var(--spacing-xs);margin:0;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold)}.category-group>h3 svg{width:16px;height:16px}.category-group--expense>h3 svg{color:var(--color-expense)}.category-group--income>h3 svg{color:var(--color-income)}.category-row{display:flex;min-width:0;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:background-color var(--transition-fast)}.category-row:hover{background:var(--color-bg-card-hover)}.category-row+.category-row{border-top:1px solid var(--color-border-subtle)}.category-row .category-icon{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card)}.category-row>div:nth-child(2){flex:1 1 auto;min-width:0}.category-row>div:nth-child(2)>span{display:block;color:var(--color-text-muted);font-size:var(--font-size-caption)}.category-row h4{overflow:hidden;margin:var(--spacing-3xs) 0 0;color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.category-row-actions{display:flex;flex:0 0 auto;gap:var(--spacing-2xs)}.category-row-actions button{display:grid;width:36px;height:36px;place-items:center;padding:0;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--color-text-secondary);cursor:pointer}.category-row-actions button:hover{border-color:var(--color-border);background:var(--color-bg-card);color:var(--color-text-primary)}.category-row-actions button.archive:hover{color:#fca5a5}.category-row-actions svg{width:17px;height:17px}.category-empty{display:flex;min-height:170px;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);text-align:center}.category-empty svg{width:24px;height:24px;margin-bottom:var(--spacing-sm);color:var(--color-text-muted)}.category-empty h3{margin:0;font-size:var(--font-size-body)}.category-empty p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.settings-page-header{margin-bottom:var(--spacing-lg)}.settings-panel{display:flex;flex-direction:column;gap:var(--spacing-lg)}.settings-group--restore{border-color:#fbbf2433}.backup-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.backup-actions button,.danger-action{display:inline-flex;width:fit-content;min-height:44px;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:10px 18px;border:1px solid transparent;border-radius:var(--radius-control);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.backup-actions button{background:var(--color-accent);color:var(--color-bg-app)}.backup-actions button svg,.danger-action svg{width:17px;height:17px}.backup-actions p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-secondary)}.encrypted-backup-form,.encrypted-backup-unlock{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.encrypted-backup-form h3,.encrypted-backup-form>p,.encrypted-backup-unlock>p{grid-column:1 / -1;margin:0}.encrypted-backup-form h3{font-size:var(--font-size-body)}.encrypted-backup-form>p,.encrypted-backup-unlock>p{color:var(--color-text-muted);font-size:var(--font-size-caption)}.encrypted-backup-form label,.encrypted-backup-unlock label{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.encrypted-backup-form input,.encrypted-backup-unlock input{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-bg-input);color:var(--color-text-primary);font:inherit}.encrypted-backup-form input:focus,.encrypted-backup-unlock input:focus{border-color:var(--color-accent);outline:2px solid var(--color-accent-subtle)}.encrypted-backup-form button,.encrypted-backup-unlock button{display:inline-flex;width:fit-content;min-height:44px;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:10px 16px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.encrypted-backup-form button:disabled,.encrypted-backup-unlock button:disabled{opacity:.55;cursor:not-allowed}.encrypted-backup-form button svg{width:17px;height:17px}.encrypted-backup-unlock{margin-top:var(--spacing-sm)}.encrypted-backup-unlock>p{align-self:center}.backup-import{display:flex;flex-direction:column;gap:var(--spacing-md)}.backup-file-field{position:relative;display:flex;flex-direction:column;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium);cursor:pointer}.backup-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.backup-file-picker{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:48px;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border:1px dashed var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-bg-input);color:var(--color-text-secondary);transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.backup-file-field:hover .backup-file-picker,.backup-file-input:focus-visible+.backup-file-picker{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-text-primary)}.backup-file-picker>svg{width:19px;height:19px;flex:0 0 auto;color:var(--color-accent)}.backup-file-picker__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-file-picker__action{flex:0 0 auto;padding:5px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--font-size-caption)}.backup-file-input:disabled+.backup-file-picker{opacity:.55;cursor:not-allowed}.backup-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-xs);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.backup-summary h2{grid-column:1 / -1;margin:0 0 var(--spacing-xs);font-size:var(--font-size-body)}.restore-recovery-point{grid-column:1 / -1;display:flex;min-width:0;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:var(--shadow-sm)}.restore-recovery-point h3,.restore-encrypted-recovery h4{margin:0;font-size:var(--font-size-body)}.restore-recovery-point>p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.restore-plaintext-warning{padding:var(--spacing-sm);border-left:3px solid #fbbf24;border-radius:var(--radius-sm);background:#fbbf2412}.restore-recovery-actions button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:10px 16px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-bg-elevated);color:var(--color-text-primary);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.restore-recovery-actions svg{width:17px;height:17px}.restore-encrypted-recovery{background:var(--color-bg-surface)}.restore-encrypted-recovery h4,.restore-encrypted-recovery>p{grid-column:1 / -1}.backup-summary>div{display:flex;min-width:0;flex-direction:column;gap:var(--spacing-3xs);padding:var(--spacing-xs)}.backup-summary>div span{color:var(--color-text-muted);font-size:var(--font-size-caption)}.backup-summary>div strong{overflow-wrap:anywhere;color:var(--color-text-primary);font-size:var(--font-size-secondary);font-variant-numeric:tabular-nums}.restore-confirmation{grid-column:1 / -1;display:flex;align-items:flex-start;gap:var(--spacing-xs);margin-top:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.restore-confirmation input{width:18px;height:18px;flex:0 0 auto;margin:1px 0 0}.danger-action{grid-column:1 / -1;width:100%;background:#ef44441f;border-color:#ef444459;color:#fca5a5}.backup-status{margin:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid rgba(52,211,153,.28);border-radius:var(--radius-sm);color:var(--color-income);background:#34d39914;font-size:var(--font-size-secondary)}.app-lock-screen{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;min-height:100dvh;place-items:center;padding:max(20px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));background:var(--color-bg-app)}.app-lock-card{display:flex;width:min(100%,420px);flex-direction:column;align-items:stretch;gap:var(--spacing-sm);padding:clamp(22px,6vw,34px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-surface);box-shadow:0 20px 60px #0000004d}.app-lock-card>.app-lock-icon{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-accent);background:var(--color-accent-subtle)}.app-lock-icon svg{width:23px;height:23px}.app-lock-card .eyebrow{margin:var(--spacing-xs) 0 0;color:var(--color-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.app-lock-card h1{margin:0;font-size:var(--font-size-page-title)}.app-lock-card>p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-secondary)}.app-lock-card form,.app-lock-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.app-lock-card--shake{animation:uwShake .42s ease-in-out}.app-lock-pin-container{position:relative;min-height:60px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-bg-input);cursor:text;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.app-lock-pin-container.is-focused{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.app-lock-pin-container.is-error{border-color:var(--color-expense);box-shadow:0 0 0 3px #f8717124}.app-lock-native-input{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%!important;min-height:100%!important;margin:0;border:0!important;outline:0!important;opacity:0;cursor:text}.app-lock-pin-cells{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(18px,1fr);align-items:center;height:58px;gap:clamp(5px,2vw,10px);padding:8px clamp(12px,5vw,26px);pointer-events:none}.app-lock-pin-cell{display:grid;min-width:0;height:36px;place-items:center;border-bottom:2px solid var(--color-border-strong);transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.app-lock-pin-cell.is-current{border-color:var(--color-accent)}.app-lock-pin-cell.is-filled{border-color:var(--color-accent);background:#34d3990d}.app-lock-pin-dot{width:8px;height:8px;border-radius:var(--radius-full);background:transparent;transform:scale(.5);transition:background-color var(--transition-fast),transform var(--transition-fast)}.app-lock-pin-cell.is-filled .app-lock-pin-dot{background:var(--color-accent);transform:scale(1)}.app-lock-pin-cell.is-current .app-lock-pin-dot{background:var(--color-accent);animation:uwPinPulse 1.1s ease-in-out infinite}.app-lock-pin-container.is-error .app-lock-pin-cell{border-color:var(--color-expense)}.app-lock-pin-container.is-error .app-lock-pin-dot{background:var(--color-expense)}.app-lock-card label,.app-lock-field{display:flex;flex-direction:column;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium)}.app-lock-card input,.app-lock-field input{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);outline:none;background:var(--color-bg-input);color:var(--color-text-primary);font:inherit}.app-lock-card input:focus,.app-lock-field input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.app-lock-card button,.app-lock-form>button,.app-lock-disable>button,.app-lock-now{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:10px 16px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-bg-app);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.app-lock-card button:disabled,.app-lock-form button:disabled,.app-lock-disable button:disabled{opacity:.55;cursor:not-allowed}.app-lock-card .app-lock-disclaimer,.app-lock-warning{color:var(--color-text-muted);font-size:var(--font-size-caption);line-height:1.5}.app-lock-card .app-lock-error,.app-lock-settings>.form-error{color:#fca5a5}.app-lock-settings{border-color:#60a5fa38}.app-lock-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.app-lock-form>button{width:fit-content}.app-lock-management{display:flex;flex-direction:column;gap:var(--spacing-md)}.app-lock-management>.app-lock-form{grid-template-columns:repeat(3,minmax(0,1fr))}.app-lock-disable{display:flex;align-items:end;gap:var(--spacing-sm)}.app-lock-disable .app-lock-field{flex:1 1 auto}.app-lock-disable>button.button-secondary,.app-lock-now.button-secondary{border-color:var(--color-border-strong);background:var(--color-bg-elevated);color:var(--color-text-primary)}.app-lock-now svg{width:17px;height:17px}.app-lock-warning{margin:0;padding:var(--spacing-sm) var(--spacing-md);border-left:3px solid #fbbf24;border-radius:var(--radius-sm);background:#fbbf2412}@keyframes uwShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes uwPinPulse{0%,to{opacity:.45;transform:scale(.72)}50%{opacity:1;transform:scale(1)}}@media(max-width:700px){.app-lock-form,.app-lock-management>.app-lock-form{grid-template-columns:minmax(0,1fr)}.app-lock-form>button{width:100%}.app-lock-disable{align-items:stretch;flex-direction:column}.encrypted-backup-form,.encrypted-backup-unlock{grid-template-columns:minmax(0,1fr)}.encrypted-backup-form button,.encrypted-backup-unlock button,.restore-recovery-actions button{width:100%}}@media(min-width:920px){.accounts-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:var(--spacing-lg);align-items:start}.accounts-panel>.uw-page-header{grid-column:1 / -1;margin-bottom:0}.accounts-list-section{margin-top:0}.category-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(390px,1.15fr);gap:var(--spacing-lg);align-items:start}.category-page-header{grid-column:1 / -1;margin-bottom:0}.category-panel{grid-template-rows:auto 1fr}.category-list-section{margin-top:0}}@media(max-width:560px){.accounts-panel,.category-panel,.settings-panel{padding:var(--spacing-md) 0 calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px))}.accounts-form,.category-form-grid{grid-template-columns:minmax(0,1fr);gap:var(--spacing-sm)}.accounts-name-field,.category-name-field{grid-column:auto}.accounts-row{display:grid;grid-template-columns:34px minmax(0,1fr) max-content;align-items:start;padding:var(--spacing-sm)}.accounts-row-icon{width:34px;height:34px}.accounts-row-side{display:contents}.accounts-row-side>strong{grid-column:3;grid-row:1;font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold);white-space:nowrap}.accounts-row-side>div{grid-column:1 / -1;grid-row:2;justify-content:flex-end;margin-top:var(--spacing-2xs)}.category-form-section,.settings-group{padding:var(--spacing-md)}.category-row{padding:var(--spacing-sm)}.backup-summary{grid-template-columns:minmax(0,1fr)}.backup-actions button{width:100%}}@media(max-width:380px){.uw-mobile-nav{left:var(--spacing-xs);right:var(--spacing-xs)}.uw-mobile-nav__bar{padding-inline:var(--spacing-2xs)}.uw-mobile-nav__item-icon-wrapper{width:40px;height:40px}.app-lock-pin-cells{gap:4px;padding-inline:10px}.dashboard-total__flow{gap:var(--spacing-xs)}.dashboard-total__flow-icon{width:26px;height:26px}}@media(max-width:767px){.dashboard-panel,.account-panel,.charts-panel,.backup-panel,.transaction-panel,.category-panel,.settings-panel{border-color:transparent;background:transparent}}.uw-update-banner{position:fixed;bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,0px));right:var(--spacing-lg);z-index:200;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border:1px solid var(--color-border-strong);border-left:4px solid var(--color-accent);border-radius:var(--radius-card);box-shadow:0 12px 32px #00000073;max-width:420px;animation:uwFadeIn .2s ease-out}.uw-update-banner__content{display:flex;flex-direction:column;gap:var(--spacing-3xs)}.uw-update-banner__title{font-size:var(--font-size-secondary);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.uw-update-banner__desc{margin:0;font-size:var(--font-size-caption);color:var(--color-text-secondary)}.uw-update-banner__actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.uw-update-banner__btn{display:inline-flex;align-items:center;gap:var(--spacing-2xs);padding:6px 12px;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.uw-update-banner__close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.uw-update-banner__close:hover{color:var(--color-text-primary);background:var(--color-border-subtle)}@keyframes uwFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:767px){.uw-update-banner{bottom:calc(72px + env(safe-area-inset-bottom,0px));left:var(--spacing-md);right:var(--spacing-md);max-width:none}}.uw-empty-state{border-color:var(--glass-border-light);background-color:var(--color-bg-surface);background-image:linear-gradient(145deg,#161b22b3,#0e121775);box-shadow:var(--shadow-sm)}.transaction-form-section,.calendar-month-section,.calendar-selected-section,.accounts-form-section,.category-form-section,.settings-group{border-color:var(--glass-border);background-color:var(--color-bg-surface);background-image:var(--gradient-glass-card);box-shadow:var(--shadow-sm)}.calendar-summary-card,.debt-summary-card,.recurring-summary article{border-color:var(--glass-border);background-color:var(--color-bg-card);background-image:var(--gradient-glass-card)}.transaction-list,.calendar-items,.debt-list,.recurring-list,.accounts-list,.category-group{border-color:var(--glass-border);box-shadow:var(--shadow-sm)}.transaction-action-menu{border-color:var(--glass-border-light);background-color:var(--glass-bg-elevated);background-image:var(--gradient-glass-card);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.calendar-nav-button,.transaction-history-toggle,.category-list-toggle{transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.calendar-nav-button:active,.transaction-history-toggle:active,.category-list-toggle:active{transform:scale(.97)}.chart-legend>div{grid-template-columns:10px minmax(0,1fr) auto auto;min-height:30px}.chart-legend small{min-width:38px;color:var(--color-text-muted);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums;text-align:right}.pie-chart{position:relative}.pie-chart__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 30%;pointer-events:none;text-align:center}.pie-chart__center span{color:var(--color-text-muted);font-size:var(--font-size-caption)}.pie-chart__center strong{max-width:100%;overflow:hidden;color:var(--color-text-primary);font-family:var(--font-family-numeric);font-size:var(--font-size-secondary);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.app-lock-card{border-color:var(--glass-border-light);background-color:var(--color-bg-surface);background-image:var(--gradient-glass-card)}.app-lock-pin-container.is-success{border-color:var(--color-income);box-shadow:0 0 0 3px var(--color-accent-subtle)}.app-lock-pin-container.is-success .app-lock-pin-cell{border-color:var(--color-income)}.app-lock-pin-container.is-success .app-lock-pin-dot{background:var(--color-income)}@media(max-width:520px){.chart-legend>div{grid-template-columns:10px minmax(0,1fr) auto}.chart-legend small{grid-column:2;justify-self:start;min-width:0}.chart-legend strong{grid-column:3;grid-row:1 / span 2;align-self:center}.pie-chart__center{padding:0 27%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
