:root{--primary: #4f46e5;--primary-hover: #4338ca;--background: #0f172a;--surface: rgba(30, 41, 59, .7);--surface-border: rgba(255, 255, 255, .1);--text-main: #f8fafc;--text-muted: #94a3b8;--success: #10b981;--danger: #ef4444}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--background);background-image:radial-gradient(at 0% 0%,hsla(253,16%,7%,1) 0,transparent 50%),radial-gradient(at 50% 0%,hsla(225,39%,30%,.2) 0,transparent 50%),radial-gradient(at 100% 0%,hsla(339,49%,30%,.2) 0,transparent 50%);color:var(--text-main);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}.glass-panel{background:var(--surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--surface-border);border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.container{max-width:800px;margin:0 auto;padding:2rem 1rem}.header{text-align:center;margin-bottom:1rem}.header h1{font-size:2rem;font-weight:700;background:linear-gradient(to right,#818cf8,#c084fc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.25rem}.header p{color:var(--text-muted);font-size:.875rem}.app-container{display:flex;flex-direction:column;min-height:100vh;max-width:600px;margin:0 auto;background:var(--background);position:relative}.app-header{padding:1rem;background:#0f172af2;border-bottom:1px solid var(--surface-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.app-main{flex:1;overflow-y:auto;overflow-x:hidden;padding:1rem 1rem 6rem}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:600px;height:65px;background:#0f172af7;border-top:1px solid var(--surface-border);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;justify-content:space-around;align-items:center;padding:0 1rem env(safe-area-inset-bottom);z-index:50}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:all .2s;flex:1;height:100%}.nav-item span{font-size:.7rem;margin-top:4px;font-weight:500}.nav-item:hover,.nav-item.active{color:var(--success)}.floating-action-button{position:relative;top:-20px}.fab-icon-container{background:var(--success);color:#fff;border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #10b98166;transition:transform .2s}.floating-action-button:hover .fab-icon-container{transform:scale(1.05);background:#059669}.floating-action-button.active .fab-icon-container{background:var(--primary);box-shadow:0 4px 12px #4f46e566}.tab-content{animation-duration:.3s;animation-fill-mode:both}.fade-in{animation-name:fadeIn}.slide-up{animation-name:slideUp}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.wallet-selector-container{position:relative;width:100%;display:flex;justify-content:center}.wallet-selector-button{background:var(--surface);border:1px solid var(--surface-border);border-radius:12px;padding:.5rem 1rem;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:300px;cursor:pointer;color:var(--text-main);transition:all .2s}.wallet-selector-button:hover{background:#ffffff1a}.wallet-info{display:flex;align-items:center;gap:.75rem}.wallet-icon{font-size:1.5rem;background:#ffffff1a;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px}.wallet-text{display:flex;flex-direction:column;align-items:flex-start}.wallet-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.wallet-name{font-weight:600;font-size:.9rem}.chevron{transition:transform .3s;color:var(--text-muted)}.chevron.open{transform:rotate(180deg)}.wallet-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);width:100%;max-width:300px;background:#1a2540;border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:0 16px 40px #000000b3;z-index:100;overflow:hidden;animation:fadeIn .2s}.wallet-list{max-height:250px;overflow-y:auto}.wallet-item{width:100%;text-align:left;background:none;border:none;border-bottom:1px solid rgba(255,255,255,.05);padding:1rem;display:flex;align-items:center;gap:1rem;color:var(--text-main);cursor:pointer;transition:background .2s}.wallet-item:hover{background:#ffffff0d}.wallet-item.active{background:#10b9811a;border-left:3px solid var(--success)}.wallet-item .wallet-balance{margin-left:auto;font-weight:600;color:var(--success);font-size:.85rem}.wallet-actions{padding:1rem;background:#00000059;border-top:1px solid rgba(255,255,255,.07)}.add-wallet-btn{width:100%;background:none;border:1px dashed var(--surface-border);color:var(--text-main);padding:.75rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.add-wallet-btn:hover{background:#ffffff0d;border-color:var(--success);color:var(--success)}.add-wallet-form{display:flex;flex-direction:column;gap:.75rem}.add-wallet-form input{width:100%;padding:.75rem;background:#0f172acc;border:1px solid var(--primary);border-radius:6px;color:#fff}.form-actions{display:flex;gap:.5rem}.form-actions button{flex:1;padding:.5rem;border-radius:6px;cursor:pointer;font-weight:500}.cancel-btn{background:transparent;border:1px solid var(--surface-border);color:var(--text-muted)}.save-btn{background:var(--primary);border:none;color:#fff}.form-group{margin-bottom:1.25rem;overflow:hidden;min-width:0}.form-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-muted)}.form-control{width:100%;min-width:0;padding:.75rem 1rem;background:#0f172a99;border:1px solid var(--surface-border);border-radius:8px;color:var(--text-main);font-size:1rem;transition:all .2s ease;color-scheme:dark;box-sizing:border-box}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4f46e533}.form-control::placeholder{color:#64748b}input[type=date].form-control{-webkit-appearance:none;appearance:none;display:block;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden}input[type=number].form-control::-webkit-outer-spin-button,input[type=number].form-control::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number].form-control{-moz-appearance:textfield;appearance:textfield}.radio-group{display:flex;gap:1rem;margin-bottom:1.5rem}.radio-label{flex:1;cursor:pointer}.radio-label input[type=radio]{display:none}.radio-button{display:block;text-align:center;padding:.75rem;border-radius:8px;border:1px solid var(--surface-border);background:#0f172a66;transition:all .2s;font-weight:500}.radio-label input[type=radio]:checked+.radio-button.expense{background:#ef444433;border-color:var(--danger);color:#fca5a5}.radio-label input[type=radio]:checked+.radio-button.income{background:#10b98133;border-color:var(--success);color:#6ee7b7}.btn{display:inline-block;width:100%;padding:.875rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.transaction-list h2{font-size:1.25rem;margin-bottom:1.5rem;font-weight:600}.tx-card{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--surface-border);transition:background-color .2s;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.tx-card:last-child{border-bottom:none}.tx-card:active{background:#ffffff0f}.tx-info h3{font-size:1rem;font-weight:500;margin-bottom:.25rem}.tx-info p{font-size:.875rem;color:var(--text-muted)}.tx-amount{font-weight:600;font-size:1.125rem}.tx-amount.expense{color:#fca5a5}.tx-amount.income{color:#6ee7b7}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.loading-spinner{display:flex;justify-content:center;padding:2rem;color:var(--text-muted)}.dashboard-stats{display:flex;flex-direction:column}.stat-card{transition:transform .3s ease,box-shadow .3s ease;padding:1.25rem!important}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003}.icon-btn{background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:.5rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;transition:all .2s;min-width:36px;min-height:36px}.icon-btn:hover{background:#ffffff1a;color:var(--text-main)}.icon-btn.red:hover{background:#ef444426;color:#fca5a5}.icon-btn.green:hover{background:#10b98126;color:#6ee7b7}.wallet-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.05);gap:.5rem}.wallet-item-main{flex:1;display:flex;align-items:center;gap:.75rem;background:none;border:none;color:var(--text-main);cursor:pointer;text-align:left}.wallet-item-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .2s}.wallet-item:hover .wallet-item-actions{opacity:1}.wallet-edit-inline{display:flex;align-items:center;gap:.5rem;flex:1}.wallet-edit-input{flex:1;padding:.4rem .6rem;background:#0f172acc;border:1px solid var(--primary);border-radius:6px;color:#fff;font-size:.875rem}.modal-overlay{position:fixed;inset:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;animation:fadeIn .2s;padding:1rem}.modal-box{background:var(--surface);border:1px solid var(--surface-border);border-radius:16px;padding:1.5rem;width:100%;max-width:480px;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(60px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.modal-header h3{font-size:1.1rem;font-weight:600}.btn-primary{background:var(--primary);display:flex;align-items:center;justify-content:center;gap:.5rem}.month-nav-btn{background:#ffffff0f;border:1px solid var(--surface-border);color:var(--text-main);padding:.5rem 1.25rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s;-webkit-tap-highlight-color:transparent}.month-nav-btn:active{background:#ffffff1f}.wallet-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:none;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent;flex-shrink:0}.wallet-action-btn.edit{background:#4f46e51f;color:#a5b4fc}.wallet-action-btn.edit:hover,.wallet-action-btn.edit:active{background:#4f46e540}.wallet-action-btn.delete{background:#ef44441f;color:#fca5a5}.wallet-action-btn.delete:hover,.wallet-action-btn.delete:active{background:#ef444440}.action-sheet{background:var(--surface);border:1px solid var(--surface-border);border-radius:20px 20px 0 0;padding:0;width:100%;max-width:520px;overflow:hidden;animation:slideUp .3s ease}.action-sheet-header{padding:1.5rem 1.5rem 1rem;text-align:center;background:#0003;border-bottom:1px solid var(--surface-border)}.action-sheet-actions{padding:.5rem 0}.action-sheet-btn{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.5rem;background:none;border:none;color:var(--text-main);font-size:1rem;font-weight:500;cursor:pointer;transition:background .15s;-webkit-tap-highlight-color:transparent;text-align:left}.action-sheet-btn:active{background:#ffffff0f}.action-sheet-btn.danger{color:#fca5a5}.action-sheet-btn-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.action-sheet-btn-icon.blue{background:#4f46e526;color:#a5b4fc}.action-sheet-btn-icon.red{background:#ef444426;color:#fca5a5}.action-sheet-divider{height:1px;background:var(--surface-border);margin:0 1.5rem}.action-sheet-cancel{display:block;width:calc(100% - 2rem);margin:.75rem 1rem;padding:1rem;background:#ffffff0f;border:1px solid var(--surface-border);border-radius:12px;color:var(--text-muted);font-size:1rem;font-weight:500;cursor:pointer;text-align:center;transition:all .2s;-webkit-tap-highlight-color:transparent}.action-sheet-cancel:active{background:#ffffff1a}.screen-header{display:flex;align-items:center;gap:.5rem;padding:.25rem 0 1rem;margin-bottom:.25rem}.screen-header-back{background:#ffffff0f;border:1px solid var(--surface-border);color:var(--text-main);width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s}.screen-header-back:hover,.screen-header-back:active{background:#ffffff1f}.screen-header-title{flex:1;font-size:1.1rem;font-weight:700;text-align:center;margin:0}.screen-header-action{background:var(--primary);border:none;color:#fff;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s}.screen-header-action:hover,.screen-header-action:active{background:var(--primary-hover)}.screen-header-sort{background:#ffffff0f;border:1px solid var(--surface-border);color:var(--text-main);width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;position:relative;transition:background .2s}.screen-header-sort:hover,.screen-header-sort:active{background:#ffffff1f}.account-menu-item{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;background:none;border:none;color:var(--text-main);font-size:.95rem;font-weight:500;cursor:pointer;transition:background .15s;text-align:left;-webkit-tap-highlight-color:transparent}.account-menu-item:hover,.account-menu-item:active{background:#ffffff0d}.account-menu-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.management-list-item{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid var(--surface-border)}.management-list-item:last-child{border-bottom:none}.wallet-selector-loading{color:var(--text-muted);font-size:.9rem;padding:.5rem 0}
