.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-subtle);z-index:var(--z-sticky);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.sidebar__logo{align-items:center;gap:var(--space-sm);padding:var(--space-xl) var(--space-lg);border-bottom:1px solid var(--divider);display:flex}.sidebar__logo-icon{background:linear-gradient(135deg, var(--accent) 0%, #8b7cf7 100%);border-radius:var(--radius-md);color:#fff;width:42px;height:42px;box-shadow:var(--shadow-glow-accent);justify-content:center;align-items:center;display:flex}.sidebar__logo-text{flex-direction:column;display:flex}.sidebar__logo-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:-.02em;background:linear-gradient(135deg, var(--text-primary) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sidebar__logo-version{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-medium)}.sidebar__quick-add{padding:var(--space-md) var(--space-md) var(--space-xs);position:relative}.sidebar__add-btn{justify-content:center;align-items:center;gap:var(--space-xs);width:100%;padding:var(--space-sm) var(--space-md);background:linear-gradient(135deg, var(--accent) 0%, #1a1c80 100%);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);border:none;display:flex;box-shadow:0 4px 10px #3b3dbf33}.sidebar__add-btn:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 14px #3b3dbf4d}.sidebar__add-btn:active{transform:scale(.98)}.sidebar__add-btn--active{filter:brightness(.9)}.sidebar__dropdown{top:calc(100% - 4px);left:var(--space-md);right:var(--space-md);background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-2xs);z-index:10;flex-direction:column;gap:2px;display:flex;position:absolute}.sidebar__dropdown-item{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;transition:all var(--transition-fast);background:0 0;border:none;display:flex}.sidebar__dropdown-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.sidebar__dropdown-item svg{transition:transform var(--transition-fast)}.sidebar__dropdown-item:hover svg{transform:scale(1.1)}.sidebar__dropdown-item--income:hover{color:var(--income)}.sidebar__dropdown-item--expense:hover{color:var(--expense)}.sidebar__dropdown-item--transfer:hover{color:var(--accent)}.sidebar__nav{padding:var(--space-xs) var(--space-sm);flex-direction:column;flex:1;gap:2px;display:flex}.sidebar__link{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);text-decoration:none;display:flex;position:relative}.sidebar__link:hover{color:var(--text-primary);background:var(--bg-card)}.sidebar__link--active{color:var(--text-primary);background:var(--accent-bg)}.sidebar__link--active .sidebar__link-icon{color:var(--accent)}.sidebar__link-icon{transition:color var(--transition-fast);flex-shrink:0;align-items:center;display:flex}.sidebar__link-indicator{background:var(--accent);border-radius:0 var(--radius-full) var(--radius-full) 0;width:3px;height:20px;animation:.2s cubic-bezier(.34,1.56,.64,1) forwards scaleIn;position:absolute;top:50%;left:0;transform:translateY(-50%)}.sidebar__footer{padding:var(--space-lg);border-top:1px solid var(--divider)}.sidebar__footer-text{font-size:var(--font-size-xs);color:var(--text-tertiary);flex-direction:column;display:flex}.sidebar__footer-updated{opacity:.75;white-space:nowrap;margin-top:8px;font-size:10px}.bottom-nav{height:var(--bottom-nav-height);background:var(--bg-secondary);border-top:1px solid var(--border-subtle);z-index:var(--z-sticky);padding-bottom:env(safe-area-inset-bottom,0);-webkit-backdrop-filter:blur(20px);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{padding:var(--space-xs) var(--space-md);color:var(--text-tertiary);transition:all var(--transition-fast);flex-direction:column;align-items:center;gap:4px;text-decoration:none;display:flex;position:relative}.bottom-nav__item--active{color:var(--accent)}.bottom-nav__item--active:before{content:"";background:var(--accent);border-radius:0 0 var(--radius-full) var(--radius-full);width:24px;height:3px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.bottom-nav__icon{transition:transform var(--transition-fast);justify-content:center;align-items:center;display:flex}.bottom-nav__item--active .bottom-nav__icon{transform:scale(1.1)}.bottom-nav__label{font-size:.625rem;font-weight:var(--font-weight-medium);letter-spacing:.02em}.bottom-nav__add-btn{cursor:pointer;z-index:2;-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;justify-content:center;align-items:center;width:56px;height:56px;margin-top:-24px;padding:0;display:flex}.bottom-nav__add-btn-inner{background:linear-gradient(135deg, var(--accent) 0%, #1a1c80 100%);color:#fff;width:48px;height:48px;transition:all var(--transition-normal) cubic-bezier(.34, 1.56, .64, 1);border:3px solid var(--bg-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 6px 14px #3b3dbf59}.bottom-nav__add-btn:hover .bottom-nav__add-btn-inner{transform:scale(1.08)rotate(90deg);box-shadow:0 8px 18px #3b3dbf73}.bottom-nav__add-btn:active .bottom-nav__add-btn-inner{transform:scale(.95);box-shadow:0 3px 8px #3b3dbf4d}.modal-overlay{background:var(--bg-modal-overlay);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal-backdrop);padding:var(--space-md);opacity:0;justify-content:center;align-items:flex-start;transition:opacity .25s;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-overlay--open{opacity:1}.modal-overlay--closing{opacity:0}.modal-content{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:100%;max-height:85vh;z-index:var(--z-modal);opacity:0;margin:auto;transition:all .25s cubic-bezier(.34,1.56,.64,1);overflow-y:auto;transform:scale(.95)translateY(10px)}.modal-content--open{opacity:1;transform:scale(1)translateY(0)}.modal-content--closing{opacity:0;transform:scale(.95)translateY(10px)}.modal-content--sm{max-width:400px}.modal-content--md{max-width:520px}.modal-content--lg{max-width:680px}.modal-content--xl{max-width:900px}.modal-header{padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--divider);background:var(--bg-secondary);z-index:1;border-radius:var(--radius-xl) var(--radius-xl) 0 0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:-.01em}.modal-close{border-radius:var(--radius-full);width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.modal-body{padding:var(--space-xl)}.modal-actions{gap:var(--space-sm);margin-top:var(--space-xl);justify-content:flex-end;display:flex}@media (width<=768px){.modal-overlay{padding:var(--space-md) var(--space-xs);align-items:flex-start}.modal-content{border-radius:var(--radius-xl);max-height:90vh;margin:1.5rem auto;max-width:calc(100vw - var(--space-sm))!important}.modal-header{padding:var(--space-md) var(--space-lg)}.modal-body{padding:var(--space-lg)}.modal-content--open{transform:scale(1)translateY(0)}.modal-content--closing{transform:scale(.95)translateY(10px)}}.toast-container{top:var(--space-lg);right:var(--space-lg);z-index:var(--z-toast);gap:var(--space-xs);flex-direction:column;max-width:380px;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);cursor:pointer;-webkit-backdrop-filter:blur(20px);animation:.3s cubic-bezier(.34,1.56,.64,1) forwards toastSlideIn;display:flex}.toast--success{border-color:var(--income-border)}.toast--error{border-color:var(--expense-border)}.toast--warning{border-color:var(--warning-border)}.toast--info{border-color:var(--accent-border)}.toast-icon{border-radius:var(--radius-full);width:24px;height:24px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast--success .toast-icon{background:var(--income-bg);color:var(--income)}.toast--error .toast-icon{background:var(--expense-bg);color:var(--expense)}.toast--warning .toast-icon{background:var(--warning-bg);color:var(--warning)}.toast--info .toast-icon{background:var(--accent-bg);color:var(--accent)}.toast-message{font-size:var(--font-size-sm);color:var(--text-primary);line-height:var(--line-height-normal)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(30px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@media (width<=768px){.toast-container{top:var(--space-md);right:var(--space-md);left:var(--space-md);max-width:none}}.custom-select-container{width:100%;position:relative}.custom-select-trigger{width:100%;padding:var(--space-sm) var(--space-md);background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-md);min-height:42px;color:var(--text-primary);font-size:var(--font-size-base);font-family:var(--font-family);transition:all var(--transition-fast);cursor:pointer;outline:none;justify-content:space-between;align-items:center;display:flex}.custom-select-trigger:focus,.custom-select-container.is-open .custom-select-trigger{background-color:var(--bg-input-focus);border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}.custom-select-trigger-content{align-items:center;gap:var(--space-sm);text-align:left;flex:1;min-width:0;display:flex}.custom-select-icon{color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.custom-select-text{color:var(--text-primary);font-weight:var(--font-weight-regular);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.custom-select-text.is-placeholder{color:var(--text-tertiary)}.custom-select-arrow{color:var(--text-tertiary);margin-left:var(--space-xs);transition:transform var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.custom-select-container.is-open .custom-select-arrow{color:var(--accent);transform:rotate(180deg)}.custom-select-menu{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);flex-direction:column;max-height:260px;margin:0;padding:0;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.custom-select-search-container{padding:var(--space-xs);border-bottom:1px solid var(--glass-border);background:var(--bg-secondary)}.custom-select-search-wrapper{align-items:center;gap:var(--space-xs);background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:6px 10px;display:flex}.custom-select-search-wrapper:focus-within{border-color:var(--accent-border);box-shadow:0 0 0 2px var(--accent-bg)}.custom-select-search-icon{color:var(--text-tertiary);flex-shrink:0}.custom-select-search-input{width:100%;color:var(--text-primary);font-size:var(--font-size-sm);font-family:var(--font-family);background:0 0;border:none;outline:none;padding:0}.custom-select-search-input::placeholder{color:var(--text-tertiary)}.custom-select-search-clear{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-full);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.custom-select-search-clear:hover{color:var(--text-primary)}.custom-select-options-list{padding:var(--space-2xs);scrollbar-width:thin;scrollbar-color:var(--text-tertiary) transparent;max-height:200px;margin:0;list-style:none;overflow-y:auto}.custom-select-options-list::-webkit-scrollbar{width:6px}.custom-select-options-list::-webkit-scrollbar-track{background:0 0}.custom-select-options-list::-webkit-scrollbar-thumb{background-color:var(--text-tertiary);border-radius:var(--radius-full)}.custom-select-no-results{padding:var(--space-md);text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm);font-style:italic}.custom-select-option{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);color:var(--text-primary);font-size:var(--font-size-base)}.custom-select-option:hover{background-color:var(--bg-card-hover)}.custom-select-option.is-selected{background-color:var(--accent-bg);color:var(--accent);font-weight:var(--font-weight-medium)}.custom-select-option-content{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.custom-select-option.is-disabled{opacity:.5;cursor:not-allowed;color:var(--text-tertiary)!important;background-color:#0000!important}.custom-select-option.is-sub-option{padding-left:var(--space-xl);opacity:.95}.custom-select-option-text{justify-content:space-between;align-items:center;gap:var(--space-xs);width:100%;min-width:0;display:flex}.custom-select-parent-tag{border-radius:var(--radius-full);background:var(--bg-card);color:var(--text-tertiary);border:1px solid var(--glass-border);white-space:nowrap;flex-shrink:0;padding:1px 6px;font-size:11px;font-weight:500}.tx-form{gap:var(--space-lg);flex-direction:column;display:flex}.tx-form__amount{text-align:left;letter-spacing:-.02em;font-size:var(--font-size-2xl)!important;font-weight:var(--font-weight-bold)!important;padding:var(--space-lg)!important}.tx-form__amount--income:focus{border-color:var(--income-border)!important;box-shadow:0 0 0 3px var(--income-bg)!important}.tx-form__amount--expense:focus{border-color:var(--expense-border)!important;box-shadow:0 0 0 3px var(--expense-bg)!important}.tx-form__amount::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tx-form__amount::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.tx-form__amount[type=number]{-moz-appearance:textfield}.tx-form__reminder-link{background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--radius-md);margin-bottom:var(--space-xs);padding:var(--space-md)!important}.tx-form__reminder-link .form-label{align-items:center;gap:var(--space-xs);color:var(--accent);font-weight:var(--font-weight-semibold);display:flex}.tx-form__reminder-link-hint{font-size:var(--font-size-xs);color:var(--income);margin-top:var(--space-xs);font-weight:var(--font-weight-medium);display:block}.app-shell{width:100%;min-height:100vh;display:flex}.app-shell__main{flex:1;min-width:0;min-height:100vh;overflow-x:hidden}@media (width>=769px){.app-shell__main{margin-left:var(--sidebar-width)}}.action-sheet-backdrop{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);background:#0f172a66;justify-content:center;align-items:flex-end;animation:.2s ease-out forwards fadeIn;display:flex;position:fixed;inset:0}.action-sheet{background:var(--bg-primary);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;padding:var(--space-lg) var(--space-md) calc(var(--space-lg) + env(safe-area-inset-bottom,0));gap:var(--space-md);flex-direction:column;animation:.25s cubic-bezier(.34,1.56,.64,1) forwards slideUp;display:flex;box-shadow:0 -10px 25px -5px #0000000d,0 -8px 10px -6px #0000000d}.action-sheet__header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);flex-direction:column;display:flex}.action-sheet__handle{background:var(--border-subtle);border-radius:var(--radius-full);width:36px;height:4px}.action-sheet__title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--text-primary)}.action-sheet__options{gap:var(--space-sm);flex-direction:column;display:flex}.action-sheet__btn{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md);align-items:center;gap:var(--space-md);cursor:pointer;text-align:left;width:100%;transition:all var(--transition-fast);display:flex}.action-sheet__btn:hover{background:var(--bg-card);border-color:var(--accent);transform:translateY(-1px)}.action-sheet__btn:active{transform:scale(.98)}.action-sheet__btn-icon{border-radius:var(--radius-md);width:42px;height:42px;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.action-sheet__btn--income .action-sheet__btn-icon{background:var(--income-bg);color:var(--income)}.action-sheet__btn--expense .action-sheet__btn-icon{background:var(--expense-bg);color:var(--expense)}.action-sheet__btn--transfer .action-sheet__btn-icon{background:var(--accent-bg);color:var(--accent)}.action-sheet__btn-info{flex-direction:column;gap:2px;display:flex}.action-sheet__btn-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--text-primary)}.action-sheet__btn-desc{font-size:var(--font-size-xs);color:var(--text-tertiary)}.action-sheet__cancel{background:var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;margin-top:var(--space-xs);transition:all var(--transition-fast);text-align:center;border:none}.action-sheet__cancel:hover{background:var(--divider);color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.time-pill{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-full);gap:0;padding:4px;display:inline-flex;position:relative}.time-pill__indicator{background:var(--accent);border-radius:var(--radius-full);width:calc(33.333% - 2.67px);height:calc(100% - 8px);box-shadow:var(--shadow-glow-accent);z-index:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1);position:absolute;top:4px;left:4px}.time-pill__btn{z-index:1;padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);transition:color var(--transition-fast);white-space:nowrap;min-width:80px;position:relative}.time-pill__btn--active{color:#fff}.time-pill__btn:hover:not(.time-pill__btn--active){color:var(--text-primary)}@media (width<=480px){.time-pill__btn{padding:var(--space-xs) var(--space-sm);min-width:64px;font-size:var(--font-size-xs)}}.pin-dialog-backdrop{background-color:var(--bg-modal-overlay);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal-backdrop);padding:var(--space-lg) var(--space-md);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.pin-dialog-container{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);margin:auto;overflow:hidden}.pin-dialog-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--divider);align-items:center;display:flex;position:relative}.pin-dialog-icon{color:var(--accent);margin-right:var(--space-sm);align-items:center;display:flex}.pin-dialog-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.pin-dialog-close-x{right:var(--space-md);color:var(--text-tertiary);font-size:var(--font-size-base);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.pin-dialog-close-x:hover{color:var(--text-primary)}.pin-dialog-form{padding:var(--space-lg);gap:var(--space-md);flex-direction:column;display:flex}.pin-dialog-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.4}.pin-dialog-error{background:var(--expense-bg);border:1px solid var(--expense-border);color:var(--expense);padding:var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);text-align:center}.pin-dialog-input-wrapper{width:100%;position:relative}.pin-dialog-input{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-size:var(--font-size-md);transition:all var(--transition-fast);padding:10px 40px 10px 12px}.pin-dialog-input:focus{background:var(--bg-input-focus);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.pin-dialog-toggle-visible{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.pin-dialog-toggle-visible:hover{color:var(--text-primary)}.pin-dialog-actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-xs);display:flex}.pin-dialog-btn{padding:10px var(--space-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none}.pin-dialog-btn-cancel{background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-secondary)}.pin-dialog-btn-cancel:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--glass-border-hover)}.pin-dialog-btn-submit{background:var(--accent);color:#fff}.pin-dialog-btn-submit:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-glow-accent)}.pin-dialog-btn:disabled{opacity:.5;cursor:not-allowed}.animate-scale-up{animation:.3s cubic-bezier(.34,1.56,.64,1) forwards scaleUp}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=480px){.pin-dialog-backdrop{padding:var(--space-md) var(--space-xs)}.pin-dialog-container{border-radius:var(--radius-lg);margin:1.5rem auto}.pin-dialog-form{padding:var(--space-md)}}.balance-card{border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-lg);color:#fff;background:linear-gradient(135deg,#3b3dbf 0%,#1c1d8a 100%);border:none;position:relative;overflow:hidden}.balance-card:before{content:"";opacity:.6;pointer-events:none;background:radial-gradient(circle,#ffffff26 0%,#0000 70%);width:300px;height:300px;position:absolute;top:-50%;right:-30%}.balance-card__header{margin-bottom:var(--space-sm);z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.balance-card__label{font-size:var(--font-size-xs);color:#ffffffb3;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.06em}.balance-card__accounts{font-size:var(--font-size-xs);color:#ffffffe6;border-radius:var(--radius-full);background:#ffffff1f;border:1px solid #ffffff26;padding:2px 10px}.balance-card__amount{margin-bottom:var(--space-lg);z-index:1;position:relative}.balance-card__value{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;line-height:var(--line-height-tight);text-shadow:0 2px 4px #0000001a;color:#fff!important}.balance-card__stats{align-items:center;gap:var(--space-md);padding:var(--space-md);border-radius:var(--radius-md);z-index:1;background:#0000001f;border:1px solid #ffffff0f;display:flex;position:relative}.balance-card__stat{align-items:center;gap:var(--space-sm);flex:1;min-width:0;display:flex}.balance-card__stat-divider{background:#ffffff26;flex-shrink:0;width:1px;height:32px}.balance-card__stat-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.balance-card__stat-icon--income{color:#10b981;background:#10b98133}.balance-card__stat-icon--expense{color:#ef4444;background:#ef444433}.balance-card__stat-info{flex-direction:column;gap:2px;min-width:0;display:flex}.balance-card__stat-label{font-size:var(--font-size-xs);color:#fff9;font-weight:var(--font-weight-medium)}.balance-card__stat-value{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#fff!important}.balance-card__visibility-toggle{border-radius:var(--radius-sm);color:#fffc;cursor:pointer;transition:all var(--transition-fast);background:#ffffff1a;border:1px solid #ffffff26;justify-content:center;align-items:center;padding:6px;display:flex}.balance-card__visibility-toggle:hover{color:#fff;background:#fff3;border-color:#ffffff4d}@media (width<=480px){.balance-card{padding:var(--space-lg);border-radius:var(--radius-lg)}.balance-card__value{font-size:var(--font-size-3xl)}.balance-card__stat-value{font-size:var(--font-size-sm)}.balance-card__stats{gap:var(--space-sm);padding:var(--space-sm)}}.account-cards{gap:var(--space-sm);flex-direction:column;width:100%;display:flex}.account-cards__header{margin-bottom:var(--space-2xs);justify-content:space-between;align-items:center;display:flex}.account-cards__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.account-cards__scroll{gap:var(--space-md);padding-bottom:var(--space-sm);scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;width:100%;display:flex;overflow-x:auto}.account-cards__scroll::-webkit-scrollbar{display:none}.account-card{min-width:240px;height:120px;padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border:1px solid var(--border-default);border-left:5px solid var(--account-color,var(--accent));border-radius:var(--radius-md);scroll-snap-align:start;color:var(--text-primary);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);cursor:pointer;flex-direction:column;justify-content:space-between;align-items:flex-start;display:flex;position:relative;overflow:hidden}.account-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-default);transform:translateY(-2px)}.account-card__icon{background:var(--bg-primary);border-radius:var(--radius-sm);border:1px solid var(--glass-border);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.5rem;display:flex}.account-card__info{flex-direction:column;gap:2px;width:100%;display:flex}.account-card__name{color:var(--text-secondary);font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.account-card__balance{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:-.01em;white-space:nowrap;color:var(--text-primary)}@media (width<=480px){.account-card{min-width:210px;height:110px;padding:var(--space-sm) var(--space-md)}.account-card__icon{width:34px;height:34px;font-size:1.25rem}.account-card__balance{font-size:var(--font-size-base)}}.empty-state{padding:var(--space-3xl) var(--space-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state__icon{margin-bottom:var(--space-lg);font-size:3.5rem;animation:3s ease-in-out infinite float}.empty-state__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-xs)}.empty-state__message{font-size:var(--font-size-sm);color:var(--text-secondary);max-width:300px;line-height:var(--line-height-relaxed)}.empty-state__action{margin-top:var(--space-lg)}.daily-view{gap:var(--space-lg);flex-direction:column;display:flex}.daily-view__summary{padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;display:flex}.daily-view__summary-label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.daily-view__summary-amount{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.01em}.daily-view__group{gap:var(--space-xs);flex-direction:column;display:flex}.daily-view__group-header{padding:0 var(--space-xs);justify-content:space-between;align-items:center;display:flex}.daily-view__group-date{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.daily-view__group-count{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.daily-view__list{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.daily-view__item{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);transition:all var(--transition-fast);cursor:pointer;display:flex}.daily-view__item:hover{background:var(--bg-card-hover)}.daily-view__item+.daily-view__item{border-top:1px solid var(--divider)}.daily-view__item-icon{background:var(--bg-primary);border:1px solid var(--glass-border);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;display:flex}.daily-view__item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.daily-view__item-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.daily-view__item-meta{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.daily-view__item-amount{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);white-space:nowrap;flex-shrink:0}@media (width<=480px){.daily-view__summary{padding:var(--space-sm) var(--space-md)}.daily-view__item{padding:var(--space-sm) var(--space-md);gap:var(--space-sm)}.daily-view__item-icon{border-radius:var(--radius-sm);width:38px;height:38px;font-size:1.1rem}}.weekly-view{gap:var(--space-lg);flex-direction:column;display:flex}.weekly-view__header{padding:var(--space-lg);border-radius:var(--radius-lg)}.weekly-view__period{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium);margin-bottom:var(--space-md)}.weekly-view__totals{gap:var(--space-xl);display:flex}.weekly-view__total{flex-direction:column;gap:2px;display:flex}.weekly-view__total-label{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-medium)}.weekly-view__total-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.01em}.weekly-view__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin-bottom:var(--space-sm)}.weekly-view__categories{gap:var(--space-sm);flex-direction:column;display:flex}.weekly-view__category{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);transition:all var(--transition-fast)}.weekly-view__category:hover{background:var(--bg-card-hover)}.weekly-view__category-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.weekly-view__category-left{align-items:center;gap:var(--space-sm);display:flex}.weekly-view__category-icon{font-size:1.25rem}.weekly-view__category-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.weekly-view__category-right{align-items:center;gap:var(--space-sm);display:flex}.weekly-view__category-amount{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.weekly-view__category-percent{font-size:var(--font-size-xs);color:var(--text-tertiary);background:var(--bg-card-hover);border-radius:var(--radius-full);padding:1px 6px}.weekly-view__bar-bg{border-radius:var(--radius-full);background:#ffffff0f;height:6px;overflow:hidden}.weekly-view__bar-fill{background:linear-gradient(90deg, var(--expense) 0%, #ff8fa3 100%);border-radius:var(--radius-full);height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1)}.monthly-view{gap:var(--space-lg);flex-direction:column;display:flex}.monthly-view__tab-strip-wrapper{margin:0 calc(-1 * var(--space-md));padding:0 var(--space-md);position:relative}.monthly-view__tab-strip-wrapper:before,.monthly-view__tab-strip-wrapper:after{content:"";z-index:1;pointer-events:none;width:32px;transition:opacity var(--transition-fast);position:absolute;top:0;bottom:0}.monthly-view__tab-strip-wrapper:before{background:linear-gradient(to right, var(--bg-primary), transparent);left:0}.monthly-view__tab-strip-wrapper:after{background:linear-gradient(to left, var(--bg-primary), transparent);right:0}.monthly-view__tab-strip{gap:var(--space-xs);scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;padding:var(--space-2xs) var(--space-xs);display:flex;overflow-x:auto}.monthly-view__tab-strip::-webkit-scrollbar{display:none}.monthly-view__tab{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-lg);color:var(--text-tertiary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:56px;display:flex;position:relative}.monthly-view__tab:hover{background:var(--bg-card-hover);color:var(--text-secondary);border-color:var(--border-subtle)}.monthly-view__tab--active{background:var(--accent);color:var(--text-inverse);border-color:var(--accent);box-shadow:var(--shadow-glow-accent);font-weight:var(--font-weight-semibold)}.monthly-view__tab--active:hover{background:var(--accent-hover);color:var(--text-inverse);border-color:var(--accent-hover)}.monthly-view__tab--current:not(.monthly-view__tab--active):after{content:"";border-radius:var(--radius-full);background:var(--accent);width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.monthly-view__tab--has-data:not(.monthly-view__tab--active):not(.monthly-view__tab--current):after{content:"";border-radius:var(--radius-full);background:var(--income);width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.monthly-view__tab-month{letter-spacing:.01em;line-height:1.2}.monthly-view__tab-year{opacity:.6;font-size:.625rem;line-height:1;font-weight:var(--font-weight-regular)}.monthly-view__tab--active .monthly-view__tab-year{opacity:.85}.monthly-view__tab--earlier{border:1px dashed var(--border-default);color:var(--text-tertiary);padding:var(--space-xs) var(--space-sm);background:0 0;gap:2px;min-width:52px}.monthly-view__tab--earlier:hover{border-color:var(--accent-border);background:var(--accent-bg);color:var(--accent)}.monthly-view__tab-earlier-icon{font-size:var(--font-size-sm);line-height:1}.monthly-view__tab-earlier-text{font-size:.625rem;line-height:1;font-weight:var(--font-weight-medium);letter-spacing:.02em}.monthly-view__today-jump{z-index:2;align-items:center;gap:var(--space-2xs);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);border:1px solid var(--accent);background:var(--accent);color:var(--text-inverse);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-glow-accent);letter-spacing:.02em;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.monthly-view__today-jump:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 4px 16px #3b3dbf4d}.monthly-view__today-jump:active{transform:translateY(-50%)scale(.95)}.monthly-view__tab-strip-wrapper--with-today .monthly-view__tab-strip{padding-right:80px}.monthly-view__tab-strip-wrapper--with-today:after{display:none}.monthly-view__overview{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.monthly-view__stat{padding:var(--space-lg);border-radius:var(--radius-lg);gap:var(--space-xs);flex-direction:column;display:flex}.monthly-view__stat-label{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.04em}.monthly-view__stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:-.01em}.monthly-view__stat-bar{border-radius:var(--radius-full);height:4px;margin-top:var(--space-2xs);background:#ffffff0f;overflow:hidden}.monthly-view__stat-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1)}.monthly-view__stat-bar-fill--income{background:linear-gradient(90deg, var(--income) 0%, #33e0aa 100%)}.monthly-view__stat-bar-fill--expense{background:linear-gradient(90deg, var(--expense) 0%, #ff8fa3 100%)}.monthly-view__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin-bottom:var(--space-md)}.monthly-view__chart-container{padding:var(--space-xl);border-radius:var(--radius-lg);gap:var(--space-xl);align-items:center;display:flex}.monthly-view__donut-wrapper{flex-shrink:0;width:200px;height:200px;position:relative}.monthly-view__donut-center{flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monthly-view__donut-total{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);letter-spacing:-.01em}.monthly-view__donut-label{font-size:var(--font-size-xs);color:var(--text-tertiary)}.monthly-view__legend{gap:var(--space-sm);flex-direction:column;flex:1;display:flex}.monthly-view__legend-item{align-items:center;gap:var(--space-sm);display:flex}.monthly-view__legend-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.monthly-view__legend-name{font-size:var(--font-size-sm);color:var(--text-secondary);flex:1}.monthly-view__legend-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.monthly-view__legend-group{flex-direction:column;display:flex}.monthly-view__legend-item--clickable{cursor:pointer;border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm);margin:0 calc(-1 * var(--space-sm));transition:background var(--transition-fast), box-shadow var(--transition-fast);-webkit-user-select:none;user-select:none}.monthly-view__legend-item--clickable:hover{background:var(--bg-card-hover)}.monthly-view__legend-item--clickable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.monthly-view__legend-item--expanded{background:var(--bg-primary);box-shadow:inset 0 0 0 1px var(--border-subtle)}.monthly-view__legend-chevron{width:16px;height:16px;color:var(--text-tertiary);transition:transform .3s cubic-bezier(.4, 0, .2, 1), color var(--transition-fast);flex-shrink:0}.monthly-view__legend-chevron--open{color:var(--accent);transform:rotate(180deg)}.monthly-view__legend-item--clickable:hover .monthly-view__legend-chevron{color:var(--text-secondary)}.monthly-view__cat-transactions{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.4,0,.2,1),opacity .25s;display:grid}.monthly-view__cat-transactions--open{opacity:1;grid-template-rows:1fr}.monthly-view__cat-tx-list{margin:0 calc(-1 * var(--space-sm));overflow:hidden}.monthly-view__cat-transactions--open .monthly-view__cat-tx-list{padding-top:var(--space-xs);padding-bottom:var(--space-2xs)}.monthly-view__cat-tx-row{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm) var(--space-xs) calc(var(--space-sm) + 22px);border-radius:var(--radius-sm);transition:background var(--transition-fast);animation:.2s both catTxFadeIn;display:flex}.monthly-view__cat-tx-row:hover{background:var(--bg-card-hover)}@keyframes catTxFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.monthly-view__cat-tx-row:first-child{animation-delay:0s}.monthly-view__cat-tx-row:nth-child(2){animation-delay:30ms}.monthly-view__cat-tx-row:nth-child(3){animation-delay:60ms}.monthly-view__cat-tx-row:nth-child(4){animation-delay:90ms}.monthly-view__cat-tx-row:nth-child(5){animation-delay:.12s}.monthly-view__cat-tx-row:nth-child(n+6){animation-delay:.15s}.monthly-view__cat-tx-row+.monthly-view__cat-tx-row{border-top:1px solid var(--divider)}.monthly-view__cat-tx-icon{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.monthly-view__cat-tx-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.monthly-view__cat-tx-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.monthly-view__cat-tx-meta{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:.675rem;overflow:hidden}.monthly-view__cat-tx-amount{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--expense);white-space:nowrap;flex-shrink:0}@media (width<=768px){.monthly-view__overview{grid-template-columns:1fr}.monthly-view__chart-container{flex-direction:column;align-items:center}.monthly-view__stat-value{font-size:var(--font-size-lg)}.monthly-view__cat-tx-row{padding-left:var(--space-sm)}}.pending-bills{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-lg);padding:var(--space-sm) var(--space-md)}.pb-header{justify-content:space-between;align-items:center;gap:var(--space-sm);min-height:32px;display:flex}.pb-header__left{color:var(--warning);flex-shrink:0;align-items:center;gap:6px;display:flex}.pb-header__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--warning)}.pb-header__tabs{align-items:center;gap:6px;display:flex}.pb-tab{border-radius:var(--radius-full);font-size:.65rem;font-weight:var(--font-weight-bold);cursor:pointer;letter-spacing:.02em;border:none;align-items:center;gap:4px;padding:3px 10px;transition:all .2s;display:inline-flex}.pb-tab--overdue{color:var(--expense);background:#ef44441f}.pb-tab--overdue:hover,.pb-tab--overdue.pb-tab--active{background:#ef444438}.pb-tab--upcoming{color:var(--warning);background:#eab3081f}.pb-tab--upcoming:hover,.pb-tab--upcoming.pb-tab--active{background:#eab30838}.pb-tab__chevron{transition:transform .25s}.pb-tab__chevron--open{transform:rotate(180deg)}.pb-details{margin-top:var(--space-xs);padding-top:var(--space-xs);border-top:1px solid var(--warning-border);flex-direction:column;gap:4px;display:flex}.pb-detail{align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);padding:4px 6px;transition:background .15s;display:flex}.pb-detail:hover{background:#00000008}.pb-detail--overdue{animation:2s ease-in-out infinite pulse}.pb-detail__icon{text-align:center;flex-shrink:0;width:18px;font-size:.85rem}.pb-detail__name{font-size:var(--font-size-xs);color:var(--text-primary);font-weight:var(--font-weight-medium);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.pb-detail__due{font-size:.65rem;font-weight:var(--font-weight-bold);border-radius:var(--radius-full);flex-shrink:0;padding:2px 7px}.due--overdue{color:var(--expense);background:#ef44441f}.due--soon{color:var(--warning);background:#eab30826}.due--normal{color:var(--accent);background:#3b82f61a}.animate-slide-down{animation:.2s ease-out slideDown}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.fab-container{bottom:calc(var(--bottom-nav-height) + var(--space-lg));right:var(--space-xl);z-index:var(--z-fab);align-items:flex-end;gap:var(--space-sm);pointer-events:none;flex-direction:column;display:flex;position:fixed}.fab-backdrop{z-index:-1;pointer-events:auto;background:#0000004d;animation:.2s forwards fadeIn;position:fixed;inset:0}.fab-button{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent) 0%, #8b7cf7 100%);color:#fff;width:56px;height:56px;box-shadow:var(--shadow-glow-accent), var(--shadow-lg);pointer-events:auto;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex}.fab-button:hover{box-shadow:0 0 30px var(--accent-glow), var(--shadow-xl);transform:scale(1.08)}.fab-button:active{transform:scale(.95)}.fab-button--open{box-shadow:var(--shadow-glow-expense), var(--shadow-lg);background:linear-gradient(135deg,#ff4d6a 0%,#ff6b8a 100%);transform:rotate(45deg)}.fab-button--open:hover{transform:rotate(45deg)scale(1.08)}.fab-menu{align-items:flex-end;gap:var(--space-xs);opacity:0;pointer-events:none;flex-direction:column;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex;transform:translateY(10px)}.fab-menu--open{opacity:1;pointer-events:auto;transform:translateY(0)}.fab-option{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);background:var(--bg-secondary);border:1px solid var(--glass-border);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;box-shadow:var(--shadow-md);transition:all var(--transition-fast);display:flex}.fab-option:hover{transform:translate(-4px)}.fab-option--income{border-color:var(--income-border)}.fab-option--income svg{color:var(--income)}.fab-option--income:hover{background:#e6f9f0}.fab-option--expense{border-color:var(--expense-border)}.fab-option--expense svg{color:var(--expense)}.fab-option--expense:hover{background:#fde8eb}.fab-option--transfer{border-color:var(--accent-border)}.fab-option--transfer svg{color:var(--accent)}.fab-option--transfer:hover{background:#ebecfa}@media (width>=769px){.fab-container{bottom:var(--space-xl);right:var(--space-2xl)}}@media (width<=768px){.fab-container{display:none!important}}.dashboard{gap:var(--space-lg);flex-direction:column;display:flex}.dashboard__top{margin-bottom:var(--space-2xs)}.dashboard__filter{z-index:var(--z-sticky);padding:var(--space-sm) 0;background:linear-gradient(180deg, var(--bg-primary) 60%, transparent 100%);justify-content:center;display:flex;position:sticky;top:0}.dashboard__content{min-height:200px;animation:.3s forwards fadeInUp}.confirm-message{font-size:var(--font-size-base);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-md)}.tx-filters{gap:var(--space-md);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.tx-search{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:all var(--transition-fast);color:var(--text-secondary);display:flex}.tx-search:focus-within{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg);background:var(--bg-input-focus)}.tx-search__input{color:var(--text-primary);font-size:var(--font-size-sm);background:0 0;border:none;flex:1}.tx-search__input::placeholder{color:var(--text-tertiary)}.tx-filter-pills{gap:var(--space-xs);padding-bottom:2px;display:flex;overflow-x:auto}.tx-filter-pill{padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--glass-border);transition:all var(--transition-fast);white-space:nowrap}.tx-filter-pill:hover{background:var(--bg-card-hover);color:var(--text-primary)}.tx-filter-pill--active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.tx-filter-pill--active.tx-filter-pill--income{background:var(--income-bg);border-color:var(--income-border);color:var(--income)}.tx-filter-pill--active.tx-filter-pill--expense{background:var(--expense-bg);border-color:var(--expense-border);color:var(--expense)}.tx-list{gap:var(--space-lg);flex-direction:column;display:flex}.tx-date-group{gap:var(--space-xs);flex-direction:column;display:flex}.tx-date-group__header{padding:0 var(--space-xs);justify-content:space-between;align-items:center;display:flex}.tx-date-group__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.tx-date-group__total{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.tx-date-group__items{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:clip}.tx-item{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);transition:background var(--transition-fast);cursor:pointer;display:flex}.tx-item:hover{background:var(--bg-card-hover)}.tx-item+.tx-item{border-top:1px solid var(--divider)}.tx-item__icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.tx-item__icon--income{background:var(--income-bg)}.tx-item__icon--expense{background:var(--expense-bg)}.tx-item__icon--transfer{background:var(--accent-bg);color:var(--accent);font-size:1rem;font-weight:700}.tx-item__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tx-item__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tx-item__meta{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tx-item__right{align-items:center;gap:var(--space-sm);flex-shrink:1;min-width:0;display:flex}.tx-item__amount{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tx-item__delete{border-radius:var(--radius-full);width:36px;min-width:36px;height:36px;min-height:36px;color:var(--text-tertiary);opacity:.4;transition:all var(--transition-fast);z-index:10;cursor:pointer;pointer-events:auto;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.tx-item:hover .tx-item__delete{opacity:1;color:var(--text-secondary)}.tx-item__delete:hover{background:var(--expense-bg);color:var(--expense)!important}.tx-date-filters{gap:var(--space-sm);border-top:1px solid var(--divider);padding-top:var(--space-sm);margin-top:var(--space-xs);flex-direction:column;display:flex}.tx-date-pills{gap:var(--space-xs);padding-bottom:2px;display:flex;overflow-x:auto}.tx-date-pill{border-radius:var(--radius-full);font-size:11px;font-weight:var(--font-weight-medium);color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--glass-border);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;padding:4px 12px}.tx-date-pill:hover{background:var(--bg-card-hover);color:var(--text-primary)}.tx-date-pill--active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.tx-custom-dates{align-items:center;gap:var(--space-md);margin-top:var(--space-2xs);display:flex}.date-input-group{align-items:center;gap:var(--space-xs);display:flex}.date-input-group label{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-medium)}.tx-date-input{background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);padding:6px var(--space-sm);font-size:var(--font-size-xs);font-family:var(--font-family)}.tx-date-input:focus{border-color:var(--accent);outline:none}@media (width<=480px){.tx-custom-dates{align-items:stretch;gap:var(--space-xs);flex-direction:column}}@media (width<=768px){.tx-item{padding:var(--space-sm) var(--space-md);gap:var(--space-sm)}.tx-item__icon{border-radius:var(--radius-sm);width:38px;height:38px;font-size:1.1rem}.tx-item__delete{opacity:1!important}}.tx-pagination{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--divider);background:var(--bg-card);justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.tx-pagination-btn{border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--glass-border);transition:all var(--transition-fast);cursor:pointer;justify-content:center;align-items:center;padding:6px 16px;display:inline-flex}.tx-pagination-btn:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--glass-border-hover)}.tx-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.tx-pagination-info{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.page-title-row{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.page-title-row .page-title{margin-bottom:0}.cat-tree{flex-direction:column;gap:2px;display:flex}.cat-node{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.cat-parent{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);transition:background var(--transition-fast);display:flex}.cat-parent:hover{background:var(--bg-card-hover)}.cat-parent--disabled{opacity:.5}.cat-expand{width:24px;height:24px;color:var(--text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.cat-icon{flex-shrink:0;font-size:1.25rem}.cat-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);flex:1}.cat-count{font-size:var(--font-size-xs);color:var(--text-tertiary);background:var(--bg-card-hover);border-radius:var(--radius-full);flex-shrink:0;padding:1px 8px}.cat-actions{opacity:0;transition:opacity var(--transition-fast);gap:4px;display:flex}.cat-parent:hover .cat-actions,.cat-child:hover .cat-actions{opacity:1}.cat-action{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:.75rem;display:flex}.cat-action:hover{background:var(--bg-card-hover);color:var(--text-primary)}.cat-action--danger:hover{background:var(--expense-bg);color:var(--expense)}.cat-children{border-top:1px solid var(--divider)}.cat-child{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);padding-left:calc(var(--space-lg) + 24px + var(--space-sm));transition:background var(--transition-fast);display:flex}.cat-child:hover{background:var(--bg-card-hover)}.cat-child--disabled{opacity:.5}.cat-child+.cat-child{border-top:1px solid var(--divider)}.cat-form{gap:var(--space-lg);flex-direction:column;display:flex}.cat-form__emojis{flex-wrap:wrap;gap:4px;display:flex}.cat-form__emoji{border-radius:var(--radius-sm);width:36px;height:36px;transition:all var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.cat-form__emoji:hover{background:var(--bg-card-hover)}.cat-form__emoji--selected{background:var(--accent-bg);border-color:var(--accent)}.debt-summary{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.debt-summary__item{padding:var(--space-lg);border-radius:var(--radius-lg);gap:var(--space-2xs);flex-direction:column;display:flex}.debt-summary__label{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.04em}.debt-summary__value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.debt-tabs{background:var(--bg-card);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border:1px solid var(--glass-border);gap:2px;padding:3px;display:flex}.debt-tab{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);transition:all var(--transition-fast);text-align:center;flex:1}.debt-tab:hover{color:var(--text-primary)}.debt-tab--active{background:var(--accent-bg);color:var(--accent)}.debt-list{gap:var(--space-md);flex-direction:column;display:flex}.debt-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-lg);gap:var(--space-md);transition:all var(--transition-normal);flex-direction:column;display:flex}.debt-card:hover{border-color:var(--glass-border-hover)}.debt-card__header{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.debt-card__person{align-items:center;gap:var(--space-sm);display:flex}.debt-card__avatar{border-radius:var(--radius-full);width:40px;height:40px;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);flex-shrink:0;justify-content:center;align-items:center;display:flex}.debt-card__avatar--lending{background:var(--income-bg);color:var(--income);border:1px solid var(--income-border)}.debt-card__avatar--borrowing{background:var(--expense-bg);color:var(--expense);border:1px solid var(--expense-border)}.debt-card__info{flex-direction:column;gap:2px;display:flex}.debt-card__name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.debt-card__type{font-size:var(--font-size-xs);color:var(--text-tertiary)}.debt-card__amounts{text-align:right;flex-direction:column;gap:2px;display:flex}.debt-card__remaining{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.debt-card__total{font-size:var(--font-size-xs);color:var(--text-tertiary)}.debt-card__progress{align-items:center;gap:var(--space-sm);display:flex}.debt-card__progress-bar{border-radius:var(--radius-full);background:#ffffff0f;flex:1;height:6px;overflow:hidden}.debt-card__progress-fill{border-radius:var(--radius-full);height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1)}.debt-card__progress-fill--lending{background:linear-gradient(90deg, var(--income) 0%, #33e0aa 100%)}.debt-card__progress-fill--borrowing{background:linear-gradient(90deg, var(--expense) 0%, #ff8fa3 100%)}.debt-card__progress-text{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap}.debt-card__repayments{border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);background:#ffffff05}.debt-card__repayment{font-size:var(--font-size-xs);color:var(--text-secondary);justify-content:space-between;padding:2px 0;display:flex}.debt-card__repayment-amount{font-weight:var(--font-weight-medium);color:var(--text-primary)}.debt-card__note{font-size:var(--font-size-xs);color:var(--text-tertiary);font-style:italic}.debt-card__actions{gap:var(--space-xs);display:flex}.debt-type-toggle{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--glass-border);gap:2px;padding:3px;display:flex}.debt-type-btn{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);transition:all var(--transition-fast);text-align:center;flex:1}.debt-type-btn--active.debt-type-btn--lending{background:var(--income-bg);color:var(--income)}.debt-type-btn--active.debt-type-btn--borrowing{background:var(--expense-bg);color:var(--expense)}@media (width<=600px){.debt-summary{grid-template-columns:1fr}.debt-card__header{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.debt-card__amounts{text-align:left;width:100%}.debt-card__actions{flex-direction:column;align-items:stretch}}.debt-sub-filters{gap:var(--space-xs);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.debt-sub-filter{border-radius:var(--radius-full);font-size:11px;font-weight:var(--font-weight-semibold);color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--glass-border);transition:all var(--transition-fast);cursor:pointer;padding:6px 14px}.debt-sub-filter:hover{background:var(--bg-card-hover);color:var(--text-primary)}.debt-sub-filter--active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.reminder-summary-grid{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.reminder-summary-card{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--glass-border);transition:all var(--transition-fast);display:flex}.reminder-summary-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.reminder-summary-card__emoji{font-size:1.25rem}.reminder-summary-card__info{flex-direction:column;display:flex}.reminder-summary-card__count{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:1.1}.reminder-summary-card__label{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-medium)}.reminder-summary-card--overdue{border-color:var(--expense-border);background:var(--expense-bg)}.reminder-summary-card--overdue .reminder-summary-card__count{color:var(--expense)}.reminder-summary-card--due{border-color:var(--accent-border);background:var(--accent-bg)}.reminder-summary-card--due .reminder-summary-card__count{color:var(--accent)}.reminder-summary-card--upcoming{border-color:var(--warning-border);background:var(--warning-bg)}.reminder-summary-card--upcoming .reminder-summary-card__count{color:var(--warning)}.reminder-summary-card--paid{border-color:var(--income-border);background:var(--income-bg)}.reminder-summary-card--paid .reminder-summary-card__count{color:var(--income)}.reminder-notice{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-lg);font-size:var(--font-size-sm);display:flex}.reminder-notice--warning{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning)}.reminder-notice--info{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-primary)}.reminder-list{gap:var(--space-sm);flex-direction:column;display:flex}.reminder-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:all var(--transition-fast);flex-direction:column;gap:0;display:flex;overflow:hidden}.reminder-card:hover{background:var(--bg-card-hover)}.reminder-card--overdue{border-color:var(--expense-border);background:var(--expense-bg)}.reminder-card--due-today{border-color:var(--accent-border);background:var(--accent-bg)}.reminder-card--upcoming{border-color:var(--warning-border)}.reminder-card--paid{border-color:var(--income-border);opacity:.9;background:#10b98105}.reminder-card--skipped{opacity:.7}.reminder-card__main{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);cursor:pointer;display:flex}.reminder-card__left{align-items:center;gap:var(--space-md);flex:1;min-width:0;display:flex}.reminder-card__icon{flex-shrink:0;font-size:1.5rem}.reminder-card__info{flex-direction:column;gap:2px;min-width:0;display:flex}.reminder-card__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.reminder-card__due{font-size:var(--font-size-xs);color:var(--text-tertiary)}.reminder-card__right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.reminder-card__status-pill{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;align-items:center;gap:4px;padding:3px 12px;display:inline-flex}.reminder-card__alert-info{color:var(--text-tertiary);font-size:.65rem}.reminder-type-badge{border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:10px;font-weight:var(--font-weight-medium);vertical-align:middle;text-transform:uppercase;background:#ffffff14;padding:2px 6px}.reminder-type-badge--freq{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.reminder-actions-row{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-lg) var(--space-sm);border-top:1px solid var(--divider);display:flex}.reminder-btn{border:1px solid var(--border-default);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;height:30px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);background:#ffffff0d;justify-content:center;align-items:center;gap:4px;padding:0 10px;display:flex}.reminder-btn--pay{background:var(--income-bg);border-color:var(--income-border);color:var(--income)}.reminder-btn--pay:hover{background:var(--income-bg-hover);box-shadow:0 0 8px var(--income-glow)}.reminder-btn--skip{color:var(--text-secondary);background:#94a3b814;border-color:#94a3b833}.reminder-btn--skip:hover{background:#94a3b826}.reminder-btn--undo{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning)}.reminder-btn--undo:hover{background:#f59e0b26}.reminder-btn--edit:hover{border-color:var(--accent);background:#ffffff1a}.reminder-btn--delete:hover{background:var(--expense-bg);border-color:var(--expense-border);color:var(--expense)}.reminder-btn--history{font-size:var(--font-size-xs);margin-left:auto}.reminder-btn--history-active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.reminder-history{padding:var(--space-sm) var(--space-lg) var(--space-md);border-top:1px solid var(--divider);background:#00000005;animation:.2s ease-out slideDown}.reminder-history__title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-sm)}.reminder-history__empty{font-size:var(--font-size-xs);color:var(--text-tertiary);font-style:italic}.reminder-history__list{gap:var(--space-xs);flex-direction:column;display:flex}.reminder-history__item{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);border:1px solid var(--glass-border);background:#ffffff08;flex-wrap:wrap;display:flex}.reminder-history__period{font-weight:var(--font-weight-semibold);color:var(--text-primary);min-width:65px}.reminder-history__due{color:var(--text-tertiary);min-width:110px}.reminder-history__status{border-radius:var(--radius-full);font-size:.65rem;font-weight:var(--font-weight-semibold);align-items:center;padding:2px 8px;display:inline-flex}.reminder-history__paid-info{color:var(--text-tertiary);font-size:.65rem}.pay-mode-toggle{gap:var(--space-xs);margin-bottom:var(--space-lg);border:1px solid var(--border-default);border-radius:var(--radius-md);background:#ffffff08;padding:3px;display:flex}.pay-mode-btn{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1}.pay-mode-btn--active{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.pay-mode-btn:hover:not(.pay-mode-btn--active){background:#ffffff0f}.badge--muted{color:var(--text-tertiary);background:#94a3b81a;border:1px solid #94a3b833}.reminder-editing-notice{background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--radius-md);padding:var(--space-md);font-size:var(--font-size-sm);color:var(--text-primary);margin-bottom:var(--space-md);line-height:1.4}@media (width<=768px){.reminder-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.reminder-summary-grid{gap:var(--space-xs);grid-template-columns:repeat(2,1fr)}.reminder-summary-card{padding:var(--space-sm) var(--space-md)}.reminder-card__main{align-items:stretch;gap:var(--space-sm);flex-direction:column}.reminder-card__right{align-items:center;gap:var(--space-sm);flex-direction:row}.reminder-actions-row{flex-wrap:wrap}.reminder-btn--history{margin-left:0}.reminder-history__item{flex-direction:column;align-items:flex-start}}.reminder-btn--nagha{color:#4da6ff;background:#4da6ff1f;border:1px solid #4da6ff4d;font-weight:600}.reminder-btn--nagha:hover{background:#4da6ff40;border-color:#4da6ff;transform:translateY(-1px)}.nagha-calc-container{gap:var(--space-md);flex-direction:column;display:flex}.nagha-calc-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.nagha-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=500px){.nagha-grid{grid-template-columns:1fr}}.nagha-input--highlight{font-weight:600;background:#4da6ff0d!important;border-color:#4da6ff80!important}.nagha-stepper{align-items:center;gap:var(--space-xs);display:flex}.nagha-stepper-btn{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--bg-hover);width:38px;height:38px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.nagha-stepper-btn:hover{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.nagha-input--center{text-align:center;font-weight:700}.nagha-summary-card{gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);margin-top:var(--space-xs);background:#4da6ff14;border:1px solid #4da6ff40;flex-direction:column;display:flex}.nagha-summary-row{font-size:var(--font-size-sm);color:var(--text-secondary);justify-content:space-between;align-items:center;display:flex}.nagha-summary-val{color:var(--text-primary)}.nagha-summary-total{padding-top:var(--space-sm);margin-top:var(--space-xs);border-top:1px dashed #4da6ff4d;justify-content:space-between;align-items:center;display:flex}.nagha-total-title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--text-primary);display:block}.nagha-total-sub{font-size:var(--font-size-xs);color:var(--text-tertiary);display:block}.nagha-total-amount{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:#4da6ff}.nagha-modal-actions{gap:var(--space-sm);margin-top:var(--space-md);justify-content:flex-end;display:flex}.nagha-calc-link-btn{align-items:center;gap:var(--space-xs);color:#4da6ff;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-xs);cursor:pointer;width:100%;margin-bottom:var(--space-md);transition:all var(--transition-fast);background:#4da6ff1a;border:1px solid #4da6ff4d;justify-content:center;font-weight:600;display:inline-flex}.nagha-calc-link-btn:hover{background:#4da6ff33;border-color:#4da6ff}.reminder-history__row{align-items:center;gap:var(--space-md);width:100%;display:flex}.reminder-history__note{font-size:var(--font-size-xs);color:var(--accent);background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--radius-sm);width:100%;margin-top:4px;padding:2px 8px}.committee-list{gap:var(--space-md);margin-top:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.committee-card{padding:var(--space-lg);border-radius:var(--radius-lg);gap:var(--space-md);border:1px solid var(--glass-border);flex-direction:column;display:flex}.committee-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.committee-card__info-block{align-items:center;gap:var(--space-sm);display:flex}.committee-card__emoji{font-size:2rem}.committee-card__name{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0}.committee-card__sub{font-size:var(--font-size-xs);color:var(--text-tertiary);margin:2px 0 0}.committee-card__badge-row{align-items:flex-end;gap:var(--space-2xs);flex-direction:column;display:flex}.committee-badge{font-size:10px;font-weight:var(--font-weight-bold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.02em;padding:3px 8px}.committee-badge--active{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent)}.committee-badge--received{background:var(--income-bg);border:1px solid var(--income-border);color:var(--income)}.committee-badge--completed{border:1px solid var(--border-default);color:var(--text-secondary);background:#ffffff0d}.committee-card__amounts{gap:var(--space-xs);background:var(--bg-primary);border:1px solid var(--border-subtle);padding:var(--space-md);border-radius:var(--radius-md);flex-direction:column;display:flex}.com-amount-row{padding-bottom:var(--space-2xs);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.com-amount-row:last-child{border-bottom:none;padding-bottom:0}.com-amount-label{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.com-amount-val{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--text-primary);white-space:nowrap}.com-amount-sub-val{font-size:var(--font-size-xs);color:var(--text-tertiary);font-weight:var(--font-weight-regular)}.committee-card__progress{align-items:center;gap:var(--space-md);display:flex}.com-progress-bar-bg{border-radius:var(--radius-full);background:#ffffff0d;flex:1;height:6px;overflow:hidden}.com-progress-bar-fill{background:linear-gradient(90deg, var(--accent) 0%, var(--income) 100%);border-radius:var(--radius-full);height:100%;transition:width .4s}.com-progress-percent{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-secondary);text-align:right;min-width:32px}.committee-card__payout-notice{font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.payout-status{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);align-items:center;gap:var(--space-xs);display:flex}.payout-status--received{background:var(--income-bg);color:var(--income);border:1px solid var(--income-border)}.payout-status--pending{color:var(--text-secondary);border:1px solid var(--border-subtle);background:#ffffff05}.committee-card__actions{gap:var(--space-sm);margin-top:var(--space-xs);flex-direction:column;display:flex}.com-main-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.com-main-actions .btn{flex:1;min-width:100px}.com-sub-actions{gap:var(--space-xs);display:flex}.com-sub-actions .btn{flex:1}.form-payment-warning{background:var(--info-bg);border:1px solid var(--info);border-radius:var(--radius-md);padding:var(--space-md);font-size:var(--font-size-xs);color:var(--text-primary);line-height:1.4}.committee-card__history{border-top:1px dashed var(--divider);padding-top:var(--space-sm);margin-top:var(--space-xs)}.com-history-summary{color:var(--text-tertiary);font-size:9px;font-weight:var(--font-weight-bold);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;list-style:none;display:flex}.com-history-summary::-webkit-details-marker{display:none}.com-history-toggle-icon{transition:transform var(--transition-fast);font-size:8px}.committee-card__history[open] .com-history-toggle-icon{transform:rotate(180deg)}.com-history-list{gap:var(--space-2xs);max-height:120px;margin-top:var(--space-xs);flex-direction:column;padding-right:4px;display:flex;overflow-y:auto}.com-history-row{font-size:var(--font-size-xs);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:4px 0;display:flex}.com-history-row:last-child{border-bottom:none}.com-history-month{color:var(--text-primary);font-weight:var(--font-weight-medium)}.com-history-date{color:var(--text-secondary)}.com-tabs-container{margin-bottom:var(--space-lg);display:flex}.com-tabs{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-full);padding:4px;display:inline-flex}.com-tab{padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);transition:all var(--transition-fast);white-space:nowrap;text-align:center;cursor:pointer;background:0 0;border:none;min-width:90px}.com-tab--active{background:var(--accent);box-shadow:var(--shadow-glow-accent);color:#fff!important}.com-tab:hover:not(.com-tab--active){color:var(--text-primary)}@media (width<=480px){.committee-list{grid-template-columns:1fr}.committee-card__header{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.committee-card__badge-row{align-items:flex-start}.committee-card__amounts{padding:var(--space-md)}.com-amount-row{flex-direction:row;justify-content:space-between;align-items:center}}.settings-section{margin-bottom:var(--space-2xl)}.settings-section__header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.settings-section__title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-md)}.settings-section__header .settings-section__title{margin-bottom:0}.settings-card{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg)}.settings-row{justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-sm) 0;display:flex}.settings-row__info{flex-direction:column;flex:1;gap:2px;display:flex}.settings-row__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.settings-row__hint{font-size:var(--font-size-xs);color:var(--text-tertiary)}.settings-row__control{flex-shrink:0}.settings-row__input{text-align:right;width:120px}.settings-row__actions{gap:var(--space-xs);flex-shrink:0;display:flex}.settings-accounts{gap:var(--space-sm);flex-direction:column;display:flex}.settings-account{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);display:flex}.settings-account:hover{background:var(--bg-card-hover)}.settings-account__icon{flex-shrink:0;font-size:1.5rem}.settings-account__info{flex-direction:column;flex:1;gap:2px;display:flex}.settings-account__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.settings-account__type{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:capitalize}.settings-account__balance{font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.settings-footer{text-align:center;padding:var(--space-2xl) 0;color:var(--text-tertiary);font-size:var(--font-size-xs);gap:var(--space-2xs);flex-direction:column;display:flex}.account-logs-list{gap:var(--space-sm);max-height:360px;padding-right:var(--space-2xs);flex-direction:column;display:flex;overflow-y:auto}.account-log-item{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);background:var(--bg-input);border:1px solid var(--glass-border);transition:background .2s;display:flex}.account-log-item:hover{background:var(--bg-card-hover)}.account-log-item__icon{background:var(--glass-bg);border:1px solid var(--glass-border);width:36px;height:36px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.account-log-item__info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.account-log-item__title-row{justify-content:space-between;align-items:center;gap:var(--space-xs);display:flex}.account-log-item__name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.account-log-item__date{color:var(--text-tertiary);white-space:nowrap;font-size:11px}.account-log-item__details{align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--text-secondary);flex-wrap:wrap;display:flex}.account-log-item__transition{font-weight:var(--font-weight-medium);font-family:var(--font-family-mono,monospace);letter-spacing:-.02em}.account-log-item__note{color:var(--text-tertiary);font-style:italic}.account-log-item__badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);flex-shrink:0;padding:4px 8px}.account-log-item__badge--income{color:#00d68f;background:#00d68f1f;border:1px solid #00d68f40}.account-log-item__badge--expense{color:#ff4d6a;background:#ff4d6a1f;border:1px solid #ff4d6a40}@media (width<=480px){.settings-row{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.settings-row__input{text-align:left;width:100%}.account-log-item{align-items:flex-start;gap:var(--space-xs);flex-direction:column}.account-log-item__badge{align-self:flex-end}}@media (width>=769px){.hide-desktop-nav{display:none}}.login-page{background-color:var(--bg-primary);z-index:9999;width:100vw;height:100vh;font-family:var(--font-family);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;overflow:hidden}.login-bg-glows{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.glow-circle{border-radius:var(--radius-full);filter:blur(120px);opacity:.12;position:absolute}.glow-circle-1{background:radial-gradient(circle, var(--accent) 0%, transparent 70%);width:50vw;height:50vw;top:-10%;left:-10%}.glow-circle-2{background:radial-gradient(circle, var(--income) 0%, transparent 70%);width:45vw;height:45vw;bottom:-10%;right:-10%}.login-container{width:100%;max-width:440px;padding:var(--space-md);z-index:2}.login-card{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-xl), 0 10px 40px #3b3dbf0d;background:#ffffffd9;border:1px solid #e2e8f0cc}.login-logo{text-align:center;margin-bottom:var(--space-xl);flex-direction:column;align-items:center;display:flex}.login-logo-icon{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);border-radius:var(--radius-lg);color:#fff;width:64px;height:64px;box-shadow:var(--shadow-glow-accent);margin-bottom:var(--space-md);justify-content:center;align-items:center;display:flex}.login-logo-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.5px;background:linear-gradient(120deg, var(--text-primary) 0%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;margin-bottom:var(--space-2xs);-webkit-background-clip:text}.login-logo-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary)}.login-form{gap:var(--space-md);flex-direction:column;display:flex}.login-form-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center}.login-form-subtitle{font-size:var(--font-size-xs);color:var(--text-secondary);text-align:center;margin-top:calc(-1 * var(--space-xs));margin-bottom:var(--space-xs);line-height:1.4}.login-error-message{background:var(--expense-bg);border:1px solid var(--expense-border);color:var(--expense);padding:var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center}.login-input-group{gap:var(--space-xs);flex-direction:column;display:flex}.login-input-group label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.login-input-wrapper{width:100%;position:relative}.login-input-wrapper input{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;padding:12px var(--space-xl) 12px 14px;color:var(--text-primary);font-size:var(--font-size-md);transition:all var(--transition-fast)}.login-input-wrapper input:focus{background:var(--bg-input-focus);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.login-toggle-visible{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.login-toggle-visible:hover{color:var(--text-primary)}.login-submit-btn{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-normal);margin-top:var(--space-xs);box-shadow:var(--shadow-glow-accent);border:none;justify-content:center;align-items:center;padding:14px;display:flex}.login-submit-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px)}.login-submit-btn:active:not(:disabled){transform:translateY(0)}.login-submit-btn:disabled{opacity:.6;cursor:not-allowed}.login-spinner{border-radius:var(--radius-full);border:2px solid #ffffff4d;border-top-color:#fff;width:20px;height:20px;animation:.8s linear infinite login-spin}@keyframes login-spin{to{transform:rotate(360deg)}}.animate-slide-up{animation:.6s cubic-bezier(.16,1,.3,1) forwards slideUp}:root{--bg-primary:#f4f6fa;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-card-active:#f1f5f9;--bg-input:#f8fafc;--bg-input-focus:#fff;--bg-modal-overlay:#0f172a66;--glass-border:#0000000a;--glass-border-hover:#00000014;--glass-blur:0px;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-inverse:#fff;--income:#10b981;--income-hover:#059669;--income-bg:#10b98114;--income-bg-hover:#10b98126;--income-border:#10b98126;--income-glow:#10b98114;--expense:#ef4444;--expense-hover:#dc2626;--expense-bg:#ef444414;--expense-bg-hover:#ef444426;--expense-border:#ef444426;--expense-glow:#ef444414;--accent:#3b3dbf;--accent-hover:#2d2f9e;--accent-bg:#3b3dbf14;--accent-bg-hover:#3b3dbf26;--accent-border:#3b3dbf26;--accent-glow:#3b3dbf14;--warning:#f59e0b;--warning-bg:#f59e0b14;--warning-border:#f59e0b26;--info:#3b82f6;--info-bg:#3b82f614;--lending:#10b981;--borrowing:#ef4444;--border-subtle:#f1f5f9;--border-default:#e2e8f0;--divider:#f1f5f9;--shadow-sm:0 1px 3px #0000000d, 0 1px 2px #00000005;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #00000005;--shadow-xl:0 20px 25px -5px #0000000d, 0 10px 10px -5px #00000005;--shadow-glow-accent:0 4px 12px #3b3dbf26;--shadow-glow-income:0 4px 12px #10b98126;--shadow-glow-expense:0 4px 12px #ef444426;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.9375rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--font-size-2xl:1.75rem;--font-size-3xl:2.25rem;--font-size-4xl:3rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.7;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-modal-backdrop:300;--z-modal:400;--z-toast:500;--z-fab:250;--sidebar-width:260px;--header-height:64px;--bottom-nav-height:72px;--max-content-width:1200px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}#root{min-height:100vh}a{color:var(--accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-hover)}button{cursor:pointer;color:inherit;font-family:inherit;font-size:inherit;background:0 0;border:none}input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}ul,ol{list-style:none}img{max-width:100%;display:block}input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-secondary) inset!important;-webkit-text-fill-color:var(--text-primary)!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#0000001a}::-webkit-scrollbar-thumb:hover{background:#0003}.glass-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.glass-card:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.glass-card--static{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.glass-card--accent{border-color:var(--accent-border);box-shadow:var(--shadow-glow-accent)}.btn{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);transition:all var(--transition-normal);white-space:nowrap;-webkit-user-select:none;user-select:none;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(135deg,#ffffff1a 0%,#0000 50%);position:absolute;inset:0}.btn:hover:after{opacity:1}.btn:active{transform:scale(.97)}.btn--primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-glow-accent)}.btn--primary:hover{background:var(--accent-hover)}.btn--income{background:var(--income);color:var(--text-inverse);box-shadow:var(--shadow-glow-income)}.btn--expense{background:var(--expense);color:#fff;box-shadow:var(--shadow-glow-expense)}.btn--ghost{background:var(--bg-card);border:1px solid var(--glass-border);color:var(--text-primary)}.btn--ghost:hover{background:var(--bg-card-hover);border-color:var(--glass-border-hover)}.btn--sm{padding:var(--space-2xs) var(--space-sm);font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.btn--lg{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-md)}.btn--full{width:100%}.btn--danger{background:var(--expense);color:#fff}.btn--danger.btn--ghost{border:1px solid var(--expense-border);color:var(--expense);background:0 0}.btn--danger.btn--ghost:hover{background:var(--expense-bg);border-color:var(--expense-border);color:var(--expense)}.btn--icon{border-radius:var(--radius-full);width:40px;height:40px;padding:0}.form-group{gap:var(--space-2xs);flex-direction:column;display:flex}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);letter-spacing:.02em}.form-input{width:100%;padding:var(--space-sm) var(--space-md);background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-base);transition:all var(--transition-fast)}.form-input:focus{background:var(--bg-input-focus);border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}.form-input::placeholder{color:var(--text-tertiary)}.form-input--error{border-color:var(--expense-border);box-shadow:0 0 0 3px var(--expense-bg)}.form-select{width:100%;padding:var(--space-sm) var(--space-md);padding-right:var(--space-xl);background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-base);transition:all var(--transition-fast);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%238b8b9e' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.form-select:focus{background-color:var(--bg-input-focus);border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}.form-textarea{width:100%;padding:var(--space-sm) var(--space-md);background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-base);transition:all var(--transition-fast);resize:vertical;min-height:80px}.form-textarea:focus{background:var(--bg-input-focus);border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}.form-hint{font-size:var(--font-size-xs);color:var(--text-tertiary)}.form-error{font-size:var(--font-size-xs);color:var(--expense)}.text-income{color:var(--income)!important}.text-expense{color:var(--expense)!important}.text-accent{color:var(--accent)!important}.text-secondary{color:var(--text-secondary)!important}.text-warning{color:var(--warning)!important}.bg-income{background:var(--income-bg)!important}.bg-expense{background:var(--expense-bg)!important}.bg-accent{background:var(--accent-bg)!important}.font-bold{font-weight:var(--font-weight-bold)!important}.font-semibold{font-weight:var(--font-weight-semibold)!important}.font-medium{font-weight:var(--font-weight-medium)!important}.text-center{text-align:center!important}.text-right{text-align:right!important}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.amount-major{font-size:1.3em;font-weight:var(--font-weight-bold);letter-spacing:-.01em}.amount-major.text-income{text-shadow:0 0 12px var(--income-glow)}.amount-major.text-expense{text-shadow:0 0 12px var(--expense-glow)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease forwards}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease forwards}.animate-fade-in-down{animation:fadeInDown var(--transition-slow) ease forwards}.animate-fade-in-scale{animation:fadeInScale var(--transition-spring) forwards}.animate-slide-in-right{animation:slideInRight var(--transition-slow) ease forwards}.animate-slide-in-left{animation:slideInLeft var(--transition-slow) ease forwards}.animate-pulse{animation:2s ease-in-out infinite pulse}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;align-items:center;padding:2px 8px;display:inline-flex}.badge--income{background:var(--income-bg);color:var(--income);border:1px solid var(--income-border)}.badge--expense{background:var(--expense-bg);color:var(--expense);border:1px solid var(--expense-border)}.badge--warning{background:var(--warning-bg);color:var(--warning);border:1px solid var(--warning-border)}.badge--accent{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border)}.badge--fixed{background:var(--info-bg);color:var(--info)}.divider{background:var(--divider);width:100%;height:1px}.page{padding:var(--space-lg);padding-bottom:calc(var(--space-3xl) + 56px);max-width:var(--max-content-width);margin:0 auto;animation:.3s forwards fadeInUp}.page-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-lg);letter-spacing:-.02em}.page-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:calc(-1 * var(--space-sm));margin-bottom:var(--space-lg)}.grid-2{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.skeleton{background:linear-gradient(90deg, var(--bg-card) 25%, var(--bg-card-hover) 50%, var(--bg-card) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.tooltip-wrapper{position:relative}.tooltip-wrapper:after{content:attr(data-tooltip);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:9999;background:#1e293b;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:500;transition:opacity .15s,transform .15s cubic-bezier(.16,1,.3,1);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)scale(.95);box-shadow:0 4px 6px -1px #00000026,0 2px 4px -1px #0000001a}.tooltip-wrapper:before{content:"";opacity:0;pointer-events:none;z-index:9999;border:4px solid #0000;border-top-color:#1e293b;border-bottom-width:0;transition:opacity .15s,transform .15s cubic-bezier(.16,1,.3,1);position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)translateY(4px)scale(.95)}.tooltip-wrapper:hover:after,.tooltip-wrapper:hover:before{opacity:1;transform:translate(-50%)translateY(0)scale(1)}@media (width<=768px){:root{--font-size-3xl:1.75rem;--font-size-2xl:1.375rem;--font-size-xl:1.125rem}.page{padding:var(--space-md);padding-bottom:calc(var(--bottom-nav-height) + var(--space-3xl) + 56px)}.grid-2,.grid-3{grid-template-columns:1fr}.hide-mobile{display:none!important}}@media (width>=769px){.hide-desktop{display:none!important}}
