.auth-container{background-color:#050505;justify-content:center;align-items:center;height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.auth-container:before,.auth-container:after{content:"";-webkit-filter:blur(100px);z-index:0;pointer-events:none;border-radius:50%;position:absolute}.auth-container:before{background:rgba(var(--accent-color-rgb), .25);width:400px;height:400px;animation:15s ease-in-out infinite float-orb-1;top:-100px;left:-100px}.auth-container:after{background:rgba(var(--accent-color-rgb), .15);width:350px;height:350px;animation:18s ease-in-out infinite float-orb-2;bottom:-50px;right:-50px}@keyframes float-orb-1{0%{transform:translate(0)scale(1)}33%{transform:translate(40px,-30px)scale(1.1)}66%{transform:translate(-20px,40px)scale(.95)}to{transform:translate(0)scale(1)}}@keyframes float-orb-2{0%{transform:translate(0)scale(1)}33%{transform:translate(-50px,40px)scale(.9)}66%{transform:translate(30px,-30px)scale(1.05)}to{transform:translate(0)scale(1)}}.auth-card{width:100%;max-width:400px;box-shadow:0 20px 40px #00000080, 0 0 80px rgba(var(--accent-color-rgb), .15);z-index:1;flex-direction:column;gap:32px;padding:48px 32px;display:flex;position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-color), transparent);opacity:.6;height:2px;position:absolute;top:0;left:0;right:0}.auth-header{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.auth-logo{color:var(--accent-color);margin-bottom:12px}.auth-header h2{letter-spacing:-.5px;background:linear-gradient(135deg,#fff,#a0a0a0);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:6px;font-size:1.8rem;font-weight:800}.auth-header p{color:var(--text-secondary);font-size:.95rem}.auth-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-secondary);padding-left:4px;font-size:.85rem;font-weight:500}.form-group input{border-radius:var(--radius-md);color:var(--text-primary);background-color:#0003;border:1px solid #ffffff1a;border-top-color:#ffffff26;padding:16px 20px;font-size:1rem;transition:all .3s;box-shadow:inset 0 2px 4px #0003}.form-group input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(var(--accent-color-rgb), .2), inset 0 2px 4px #0003;background-color:#0000004d;outline:none}.password-toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;top:36px;right:16px}.password-toggle:hover{color:var(--text-primary)}.auth-error{-webkit-backdrop-filter:blur(8px);color:#fca5a5;border-radius:var(--radius-sm);text-align:center;background-color:#ef444426;border:1px solid #ef44444d;padding:12px;font-size:.85rem}.submit-btn{background:var(--accent-color);color:#000;border-radius:var(--radius-full);box-shadow:0 4px 15px rgba(var(--accent-color-rgb), .3);cursor:pointer;border:none;margin-top:16px;padding:16px;font-size:1.05rem;font-weight:700;transition:all .3s;position:relative;overflow:hidden}.submit-btn:after{content:"";border-radius:var(--radius-full) var(--radius-full) 0 0;background:linear-gradient(#fff3,#0000);height:40%;position:absolute;top:0;left:0;right:0}.submit-btn:hover{box-shadow:0 6px 20px rgba(var(--accent-color-rgb), .4);transform:translateY(-2px)}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{color:var(--text-muted);box-shadow:none;cursor:not-allowed;background:#ffffff1a}.auth-footer{text-align:center;margin-top:10px}.toggle-button{color:var(--accent-color);font-size:.9rem;font-weight:500}.calculator-overlay{z-index:100;-webkit-backdrop-filter:blur(8px);background-color:#000000b3;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.calculator-sheet{background-color:var(--bg-surface);padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-color);border-bottom:none;border-left:none;border-right:none;border-radius:24px 24px 0 0;width:100%;max-width:600px;margin:0 auto;box-shadow:0 -10px 40px #00000080}.calculator-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.calculator-display{text-align:left;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);letter-spacing:-1px;flex:1;padding-right:16px;font-size:2.5rem;font-weight:700;overflow:hidden}.close-btn{color:var(--text-secondary);background-color:var(--bg-surface-elevated);border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:opacity .2s;display:flex}.close-btn:active{opacity:.7}.calculator-keypad{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.calc-btn{background-color:var(--bg-surface-elevated);color:var(--text-primary);-webkit-user-select:none;user-select:none;border-radius:16px;justify-content:center;align-items:center;padding:16px 0;font-size:1.5rem;font-weight:500;transition:transform .1s,background-color .2s;display:flex}.calc-btn:active{background-color:#2a2a2a;transform:scale(.92)}.calc-btn.operator{color:var(--accent-color);background-color:rgba(var(--accent-color-rgb), .1)}.calc-btn.evaluate{background-color:var(--bg-surface-elevated);color:var(--accent-color)}.calc-btn.delete-btn{color:var(--color-expense);background-color:#ef44441a}.zero-btn{border-radius:16px;grid-column:span 2}.calc-btn.calc-apply-btn{background-color:var(--accent-color);color:#000;grid-column:span 1;font-size:1.1rem;font-weight:600}.tx-overlay{z-index:50;-webkit-backdrop-filter:blur(8px);background-color:#000000b3;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.tx-modal{-webkit-backdrop-filter:blur(40px);padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background:#121212a6;border-top:1px solid #ffffff26;border-left:1px solid #ffffff0d;border-right:1px solid #ffffff0d;border-radius:32px 32px 0 0;width:100%;max-width:600px;max-height:90vh;margin:0 auto;overflow-y:auto;box-shadow:0 -10px 40px #00000080,inset 0 1px 1px #ffffff1a}.tx-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.tx-header h2{font-size:1.25rem;font-weight:700}.tx-type-tabs{border-radius:var(--radius-lg);background:#0000004d;margin-bottom:24px;padding:6px;display:flex;box-shadow:inset 0 2px 4px #0000004d}.tx-tab{color:var(--text-secondary);border-radius:var(--radius-sm);flex:1;padding:10px 0;font-size:.85rem;font-weight:600;transition:all .2s}.tx-tab.active{color:#fff;box-shadow:0 2px 8px #0003}.tx-tab.active.expense{background-color:var(--color-expense)}.tx-tab.active.income{background-color:var(--color-income);color:#000}.tx-tab.active.transfer{background-color:var(--color-transfer)}.tx-form{flex-direction:column;gap:16px;display:flex}.amount-input-wrapper{border-radius:var(--radius-lg);background:#0003;border:1px solid #ffffff0d;border-top-color:#0000004d;align-items:center;display:flex;box-shadow:inset 0 2px 6px #0003}.amount-input-wrapper input{min-width:0;color:var(--text-primary);background:0 0;border:none;flex:1;padding:16px;font-size:1.5rem;font-weight:700}.amount-input-wrapper input:focus{box-shadow:none;outline:none}.amount-input-wrapper:focus-within{border-color:var(--accent-color)}.calc-trigger{color:var(--accent-color);justify-content:center;align-items:center;padding:16px;display:flex}.tx-submit{border-radius:var(--radius-full);color:#fff;margin-top:16px;padding:16px;font-size:1.1rem;font-weight:700;transition:opacity .2s}.tx-submit.expense{background-color:var(--color-expense)}.tx-submit.income{background-color:var(--color-income);color:#000}.tx-submit.transfer{background-color:var(--color-transfer)}.tx-submit:active{transform:translateY(0)}.tx-actions{gap:12px;margin-top:1rem;display:flex}.tx-delete{background:var(--surface-light);color:var(--color-expense);cursor:pointer;border:1px solid #f443;border-radius:12px;justify-content:center;align-items:center;padding:16px;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex}.tx-delete:active{background:#ff44441a;transform:scale(.98)}.pill-group{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;margin-top:6px;padding-bottom:8px;display:flex;overflow-x:auto}.pill-group::-webkit-scrollbar{display:none}.pill{border-radius:var(--radius-lg);color:#ffffffb3;white-space:nowrap;cursor:pointer;-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff0d;border-top-color:#ffffff1a;flex:none;padding:10px 20px;font-size:.95rem;transition:all .2s cubic-bezier(.2,.8,.2,1);box-shadow:0 4px 10px #0003}.pill.selected{background:rgba(var(--accent-color-rgb), .15);border:1px solid rgba(var(--accent-color-rgb), .3);border-top:1px solid rgba(var(--accent-color-rgb), .5);box-shadow:0 4px 15px rgba(var(--accent-color-rgb), .2), inset 1px 1px 2px #ffffff1a;color:var(--accent-color);text-shadow:0 1px 4px #00000080;font-weight:700}.amount-input-wrapper input[readonly]{cursor:pointer;caret-color:#0000}.tx-submit:disabled{opacity:.5}.layout-container{flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.layout-header{background-color:var(--bg-color);border-bottom:1px solid var(--border-color);z-index:10;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.header-brand h1{color:var(--accent-color);letter-spacing:-.5px;font-size:1.25rem;font-weight:700}.logout-button{color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:color .2s,background-color .2s;display:flex}.logout-button:active{background-color:var(--bg-surface-elevated);color:var(--text-primary)}.layout-main{background-color:var(--bg-color);flex:1;padding:20px 20px 100px;overflow-y:auto}.fab-add{background:rgba(var(--accent-color-rgb), .85);border:1px solid rgba(var(--accent-color-rgb), .9);width:64px;height:64px;box-shadow:0 10px 25px rgba(var(--accent-color-rgb), .6), inset 0px 4px 10px #ffffff4d;-webkit-backdrop-filter:blur(12px);z-index:15;border-top:1px solid #fff6;border-left:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s,background .2s;display:flex;position:absolute;bottom:104px;right:20px}.fab-add svg{color:#fff;filter:drop-shadow(0 2px 4px #0006);transition:transform .2s}.fab-add:hover{background:rgba(var(--accent-color-rgb), 1);box-shadow:0 12px 30px rgba(var(--accent-color-rgb), .8)}.fab-add:hover svg{transform:scale(1.1)rotate(90deg)}.fab-add:active{box-shadow:0 4px 15px rgba(var(--accent-color-rgb), .5);transform:scale(.92)}.bottom-nav{background:var(--nav-bg);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--border-color);height:84px;box-shadow:0 -4px 30px var(--shadow-strong);z-index:20;padding-bottom:env(safe-area-inset-bottom,0px);justify-content:space-around;align-items:center;padding-top:8px;padding-left:8px;padding-right:8px;display:flex;position:absolute;bottom:0;left:0;right:0}.nav-item{color:var(--text-secondary);-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:64px;height:64px;text-decoration:none;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex}.nav-item svg{transition:all .3s}.nav-item span{letter-spacing:.3px;font-size:.65rem;font-weight:500;transition:all .3s}.nav-item:active{transform:scale(.92)}.nav-item.active{color:var(--accent-color);-webkit-backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26;border-color:#ffffff4d #ffffff26 #ffffff26 #fff3;box-shadow:4px 4px 10px #0006,inset 2px 2px 4px #fff3,inset -2px -2px 6px #0000004d}.nav-item.active svg{filter:drop-shadow(0 2px 4px rgba(var(--accent-color-rgb), .4));transform:scale(1.1)}.nav-item.active span{font-weight:700}.app-lock-overlay{background-color:var(--overlay-bg);-webkit-backdrop-filter:blur(24px);z-index:9999;flex-direction:column;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0;overflow:hidden}.app-lock-overlay:before,.app-lock-overlay:after{content:"";-webkit-filter:blur(100px);z-index:-1;pointer-events:none;border-radius:50%;position:absolute}.app-lock-overlay:before{background:rgba(var(--accent-color-rgb), .25);width:400px;height:400px;animation:15s ease-in-out infinite float-orb-1;top:-100px;left:-100px}.app-lock-overlay:after{background:rgba(var(--accent-color-rgb), .15);width:350px;height:350px;animation:18s ease-in-out infinite float-orb-2;bottom:-50px;right:-50px}.pin-display{gap:16px;margin-bottom:40px;display:flex}.pin-dot{border:2px solid var(--text-secondary);border-radius:50%;width:16px;height:16px;transition:all .2s}.pin-dot.filled{background-color:var(--accent-color);border-color:var(--accent-color);box-shadow:0 0 10px rgba(var(--accent-color-rgb), .6);transform:scale(1.2)}.pin-pad{grid-template-columns:repeat(3,1fr);gap:20px;width:100%;max-width:300px;display:grid}.pin-btn{background:rgba(var(--accent-color-rgb), .1);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(var(--accent-color-rgb), .2);border-top:1px solid rgba(var(--accent-color-rgb), .3);border-left:1px solid rgba(var(--accent-color-rgb), .25);box-shadow:0 8px 20px var(--shadow-strong), inset 2px 2px 5px #fff3;width:70px;height:70px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:1.8rem;transition:all .2s cubic-bezier(.25,.8,.25,1);display:flex}.pin-btn:active{background:rgba(var(--accent-color-rgb), .2);box-shadow:0 4px 10px var(--shadow-strong);transform:scale(.9)}.pin-btn.action-btn{color:var(--text-secondary);background:0 0}.pin-error{color:var(--color-expense);height:20px;margin-top:-20px;margin-bottom:20px;font-size:.9rem;animation:.2s popIn}.biometric-prompt-btn{color:var(--accent-color);background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;margin-top:40px;display:flex}.dashboard-container{flex-direction:column;gap:24px;display:flex}.dashboard-header{text-align:center;padding:20px 0 10px;animation:.4s cubic-bezier(.2,.8,.2,1) 50ms backwards slideUpFade}.greeting{color:var(--text-secondary);margin-bottom:8px;font-size:.95rem;font-weight:500}.total-balance{color:var(--text-primary);letter-spacing:-1px;font-size:2.8rem;font-weight:800}.currency{color:var(--text-secondary);vertical-align:top;margin-right:4px;font-size:1.6rem;line-height:2.5rem}.balance-label{color:var(--text-muted);margin-top:4px;font-size:.85rem;font-weight:500}.summary-cards{grid-template-columns:1fr 1fr;gap:16px;animation:.4s cubic-bezier(.2,.8,.2,1) .15s backwards slideUpFade;display:grid}.accounts-summary{flex-direction:column;gap:12px;animation:.4s cubic-bezier(.2,.8,.2,1) .25s backwards slideUpFade;display:flex}.accounts-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.account-summary-card{border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.account-card-header{align-items:center;gap:10px;display:flex}.account-icon-wrapper{background-color:var(--bg-primary);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex;overflow:hidden}.bank-logo-img{object-fit:cover;width:100%;height:100%}.bank-logo-fallback{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.account-summary-card h4{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.95rem;font-weight:500;overflow:hidden}.account-summary-card .acc-bal{font-size:1.15rem;font-weight:700}.summary-card{align-items:center;gap:12px;padding:16px;display:flex}.summary-icon{border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.summary-card.income .summary-icon{background-color:rgba(var(--accent-color-rgb), .1);color:var(--color-income)}.summary-card.expense .summary-icon{color:var(--color-expense);background-color:#ef44441a}.summary-details p{color:var(--text-secondary);font-size:.75rem;font-weight:500}.summary-details h3{margin-top:2px;font-size:1.1rem;font-weight:700}.recent-transactions{flex-direction:column;gap:16px;margin-top:8px;display:flex}.section-header h3{font-size:1.2rem;font-weight:700}.tx-list{flex-direction:column;gap:12px;display:flex}.tx-item{align-items:center;gap:16px;padding:16px;display:flex}.tx-icon{border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.tx-icon.income{background-color:rgba(var(--accent-color-rgb), .1);color:var(--color-income)}.tx-icon.expense{color:var(--color-expense);background-color:#ef44441a}.tx-icon.transfer{color:var(--color-transfer);background-color:#3b82f61a}.tx-details{flex:1}.tx-details h4{margin-bottom:4px;font-size:1rem;font-weight:600}.tx-details p{color:var(--text-secondary);font-size:.8rem}.tx-amount{font-size:1.05rem;font-weight:700}.tx-amount.income{color:var(--color-income)}.tx-amount.expense{color:var(--text-primary)}.tx-amount.transfer{color:var(--text-secondary)}.loan-badge{background-color:var(--bg-surface-elevated);border-radius:var(--radius-full);border:1px solid var(--border-color);flex-direction:column;margin-top:16px;padding:8px 24px;display:inline-flex}.loan-label{color:var(--color-transfer);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.loan-amount{color:var(--text-primary);margin-top:2px;font-size:1.2rem;font-weight:800}.accounts-container{flex-direction:column;gap:20px;display:flex}.master-tabs{background-color:var(--bg-surface-elevated);border-radius:var(--radius-sm);margin-top:16px;padding:4px;display:flex}.m-tab{color:var(--text-secondary);border-radius:var(--radius-sm);flex:1;padding:10px 0;font-size:.9rem;font-weight:600;transition:all .2s}.m-tab.active{color:#000;background-color:var(--accent-color);box-shadow:0 2px 8px #0003}.add-btn{border-radius:var(--radius-md);color:var(--accent-color);border:1px dashed var(--accent-color);justify-content:center;align-items:center;gap:8px;padding:16px;font-size:1.1rem;font-weight:600;transition:transform .1s;display:flex}.add-btn:active{transform:scale(.98)}.accounts-list{flex-direction:column;gap:12px;display:flex}.account-card{align-items:center;gap:16px;padding:16px;display:flex}.category-card{flex-direction:column;align-items:stretch;gap:12px}.cat-header-row{align-items:center;gap:16px;display:flex}.acc-icon{background-color:rgba(var(--accent-color-rgb), .1);width:48px;height:48px;color:var(--accent-color);border-radius:50%;justify-content:center;align-items:center;display:flex}.acc-details{flex:1}.acc-details h3{margin-bottom:4px;font-size:1.1rem;font-weight:600}.acc-details p{color:var(--text-secondary);font-size:.8rem}.cat-badge{border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-block}.cat-badge.expense{color:var(--color-expense);background-color:#ef44441a}.cat-badge.income{color:var(--color-income);background:#22c55e1a}.edit-icon-btn{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin-left:8px;padding:4px;transition:all .2s;display:inline-flex}.edit-icon-btn:hover{color:var(--text-primary);background:#ffffff0d}.edit-icon-btn.inline{margin-left:6px;padding:2px}.acc-balance{font-size:1.2rem;font-weight:700}.add-sub-btn{color:var(--accent-color);background-color:var(--bg-surface-elevated);border-radius:50%;padding:8px}.sub-cat-list{border-top:1px solid var(--border-color);flex-wrap:wrap;gap:8px;padding-top:8px;display:flex}.sub-cat-chip{background-color:var(--bg-surface-elevated);color:var(--text-secondary);border-radius:var(--radius-full);padding:4px 10px;font-size:.8rem}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(8px);background-color:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{width:100%;max-width:400px;padding:24px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.modal-header h2{font-size:1.25rem;font-weight:700}.modal-form{flex-direction:column;gap:16px;display:flex}.type-toggle{background-color:var(--bg-surface-elevated);border-radius:var(--radius-sm);padding:4px;display:flex}.toggle-btn{color:var(--text-secondary);border-radius:var(--radius-sm);flex:1;padding:10px 0;font-size:.9rem;font-weight:600;transition:all .2s}.toggle-btn.active{color:#000;background-color:#fff;box-shadow:0 2px 8px #0003}.toggle-btn.active.expense{background-color:var(--color-expense);color:#fff}.toggle-btn.active.income{background-color:var(--color-income);color:#000}.submit-btn{background-color:var(--accent-color);color:#000;border-radius:var(--radius-full);margin-top:8px;padding:16px;font-size:1.1rem;font-weight:700}.reports-container{flex-direction:column;gap:24px;display:flex}.reports-summary{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:32px 24px;display:flex}.reports-summary h3{color:var(--text-secondary);margin-bottom:8px;font-size:1.05rem;font-weight:500}.total-expense-val{color:var(--color-expense);letter-spacing:-1px;font-size:3rem;font-weight:800}.category-breakdown{flex-direction:column;gap:16px;display:flex}.category-breakdown h3{font-size:1.2rem;font-weight:700}.category-list{flex-direction:column;gap:12px;display:flex}.category-item{flex-direction:column;gap:16px;padding:20px;display:flex}.cat-header{justify-content:space-between;align-items:center;display:flex}.cat-name{font-size:1.05rem;font-weight:600}.cat-amount{color:var(--text-primary);font-size:1.05rem;font-weight:700}.progress-bg{background-color:var(--bg-surface-elevated);border-radius:var(--radius-full);width:100%;height:8px;overflow:hidden}.progress-fill{background-color:var(--color-expense);border-radius:var(--radius-full);height:100%;transition:width .8s cubic-bezier(.16,1,.3,1)}.settings-section{flex-direction:column;gap:12px;margin-top:10px;padding:20px;display:flex}.settings-section h3{color:var(--text-primary);font-size:1.1rem;font-weight:600}.settings-section p{color:var(--text-secondary);font-size:.85rem;line-height:1.4}.setting-row{justify-content:space-between;align-items:center;gap:16px;padding:8px 0;display:flex}.setting-info h4{color:var(--text-primary);margin-bottom:4px;font-size:.95rem;font-weight:500}.setting-info p{color:var(--text-secondary);margin:0;font-size:.8rem}.setting-select{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;outline:none;padding:8px 12px;font-size:.95rem}.export-btn{color:#3b82f6;background-color:#3b82f626;border:1px solid #3b82f6;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:12px 20px;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.export-btn:active{background-color:#3b82f640;transform:scale(.98)}.transactions-page{flex-direction:column;gap:16px;display:flex}.tx-item{cursor:pointer;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;animation:.4s cubic-bezier(.2,.8,.2,1) backwards slideUpFade;display:flex}.tx-item .tx-icon{flex-shrink:0;width:36px;height:36px}.tx-item:first-child{animation-delay:50ms}.tx-item:nth-child(2){animation-delay:.1s}.tx-item:nth-child(3){animation-delay:.15s}.tx-item:nth-child(4){animation-delay:.2s}.tx-item:nth-child(5){animation-delay:.25s}.tx-item:nth-child(6){animation-delay:.3s}.tx-item:nth-child(7){animation-delay:.35s}.tx-item:nth-child(8){animation-delay:.4s}.tx-item:nth-child(9){animation-delay:.45s}.tx-item:nth-child(n+10){animation-delay:.5s}.transactions-header{justify-content:space-between;align-items:center;margin:0;display:flex}.transactions-header h2{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:700}.transactions-search{display:flex}.search-input-wrapper{flex:1;align-items:center;display:flex;position:relative}.search-icon{color:var(--text-tertiary);position:absolute;left:16px}.search-input-wrapper input{background:var(--surface-light);width:100%;color:var(--text-primary);border:1px solid #ffffff14;border-radius:12px;padding:14px 16px 14px 48px;font-size:1rem}.search-input-wrapper input:focus{border-color:var(--accent-color);outline:none}.transactions-list{flex-direction:column;display:flex}.tx-day-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.tx-day-header{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;margin-bottom:2px;font-size:.85rem;font-weight:600}.tx-day-items{flex-direction:column;gap:.75rem;display:flex}.tx-item.clickable{cursor:pointer;transition:transform .2s,background .2s}.tx-item.clickable:active{background:#ffffff0d;transform:scale(.98)}.filter-tabs{background:var(--surface-light);border-radius:12px;gap:2px;padding:4px;display:flex}.filter-tab{color:var(--text-secondary);background:0 0;border-radius:8px;flex:1;padding:6px 10px;font-size:.8rem;font-weight:600;transition:all .2s}.filter-btn{background:var(--bg-surface-elevated);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:44px;height:44px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.filter-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.tx-overlay.filter-overlay{z-index:2000;background:#00000080;align-items:flex-end;display:flex;position:fixed;inset:0}.filter-sheet{background:var(--bg-surface-elevated);border-top-left-radius:24px;border-top-right-radius:24px;flex-direction:column;max-height:85vh;padding-top:24px;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 40px #00000080}.filter-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 20px 20px;display:flex}.filter-header h2{font-size:1.25rem;font-weight:700}.filter-body{flex-direction:column;flex:1;gap:24px;padding:20px;display:flex;overflow-y:auto}.filter-section{flex-direction:column;gap:12px;display:flex}.filter-section label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.9rem;font-weight:600}.filter-actions{padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-color);background:var(--bg-surface-elevated);flex-shrink:0;gap:12px;display:flex}.clear-btn{border-radius:var(--radius-lg);color:var(--text-primary);background:var(--bg-background);border:1px solid var(--border-color);flex:1;padding:14px;font-weight:600}.apply-btn{border-radius:var(--radius-lg);color:#000;background:var(--accent-color);border:none;flex:2;padding:14px;font-weight:600}.filter-tab.active{background:var(--surface);color:var(--text-primary);box-shadow:0 2px 8px #0003}.filter-tab.active.expense{color:var(--color-expense)}.filter-tab.active.income{color:var(--color-income)}.filter-tab.active.transfer{color:var(--color-transfer)}.transactions-search{gap:12px;display:flex}.date-filter-sheet{border:1px solid var(--border-color);background:var(--bg-background);width:100%;color:var(--text-primary);border-radius:12px;padding:14px 16px;font-size:1rem}.date-filter-sheet:focus{border-color:var(--accent-color);outline:none}.pill-group{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1px solid var(--border-color);background:var(--bg-surface-elevated);color:var(--text-secondary);cursor:pointer;border-radius:20px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .2s}.pill.selected{background:rgba(var(--accent-color-rgb), .15);border-color:var(--accent-color);color:var(--accent-color)}.help-overlay{-webkit-backdrop-filter:blur(4px);z-index:9999;background:#0006;align-items:flex-end;display:flex;position:fixed;inset:0}.help-sheet{background:var(--bg-surface-elevated);width:100%;max-height:85vh;padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));border-top-left-radius:24px;border-top-right-radius:24px;flex-direction:column;gap:16px;display:flex;overflow:hidden;box-shadow:0 -10px 40px #0000004d}.help-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.help-header h3{color:var(--text-primary);margin:0;font-size:1.25rem}.help-content{flex-direction:column;gap:20px;padding-right:8px;display:flex;overflow-y:auto}.help-section h4{color:var(--accent-color);margin-bottom:8px;font-size:1.1rem}.help-section p,.help-section ul{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.5}.help-section ul{margin-top:8px;padding-left:20px}.help-section li{margin-bottom:6px}:root{--bg-color:#000;--bg-surface:#121212;--bg-surface-elevated:#1e1e1e;--text-primary:#fff;--text-secondary:#a0a0a0;--text-muted:#6e6e6e;--accent-color:#10b981;--accent-color-rgb:16, 185, 129;--accent-light:#34d399;--accent-dark:#059669;--color-expense:#ef4444;--color-income:#10b981;--color-transfer:#3b82f6;--overlay-bg:#000000b3;--shadow-strong:#0006;--nav-bg:#12121299;--border-color:#2a2a2a;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px}html[data-theme=light]{--bg-color:#f3f4f6;--bg-surface:#fff;--bg-surface-elevated:#f9fafb;--text-primary:#111827;--text-secondary:#4b5563;--text-muted:#9ca3af;--overlay-bg:#ffffffb3;--shadow-strong:#0000001a;--nav-bg:#ffffff8c;--border-color:#e5e7eb}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}#root{flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}@media (width>=768px){body{background-color:var(--bg-surface-elevated);justify-content:center;display:flex}#root{background-color:var(--bg-color);border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);width:100%;max-width:600px;transform:translateZ(0);box-shadow:0 0 20px #00000080}}.surface{background-color:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid #ffffff08;box-shadow:0 4px 20px #00000026}.glass-panel{-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-lg);background:#ffffff0d;border:1px solid #ffffff1a;border-color:#fff3 #ffffff1a #ffffff1a #ffffff26;box-shadow:0 10px 40px #0006,inset 1px 1px 3px #ffffff1a}button{color:inherit;font:inherit;cursor:pointer;outline:inherit;background:0 0;border:none}input,select{color:inherit;font:inherit;background:0 0;border:none;outline:none}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}button,.clickable{transition:transform .2s cubic-bezier(.2,.8,.2,1),background-color .2s,opacity .2s,border-color .2s}button:active,.clickable:active{transform:scale(.96)}
