@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #1a1a1a;--bg-card: #111111;--text-primary: #ffffff;--text-secondary: #888888;--text-tertiary: #555555;--accent: #6366f1;--accent-hover: #5558e3;--accent-light: rgba(99, 102, 241, .1);--success: #22c55e;--success-light: rgba(34, 197, 94, .1);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .1);--warning: #f59e0b;--border: #222222;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .5);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .5);--radius: 16px;--radius-lg: 24px;--safe-top: env(safe-area-inset-top);--safe-bottom: env(safe-area-inset-bottom)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;user-select:none;-webkit-user-select:none}.mobile-container{min-height:100vh;display:flex;flex-direction:column;position:relative;max-width:100vw;overflow-x:hidden}.login-bg{background:linear-gradient(135deg,#000000 0%,#1a1a1a 100%)}.login-screen{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:2rem 1.5rem;max-width:400px;margin:0 auto;width:100%}.login-header{text-align:center;margin-bottom:3rem;animation:fadeInUp .6s ease-out}.app-icon{width:80px;height:80px;background:var(--accent);border-radius:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;box-shadow:0 10px 40px #6366f14d}.app-title{font-size:2rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-.02em}.app-subtitle{color:var(--text-secondary);font-size:1.1rem}.login-form{animation:fadeInUp .6s ease-out .1s both}.app-header{background:var(--bg-secondary);padding:calc(var(--safe-top) + 1rem) 1.5rem 1rem;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:40;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.header-content{display:flex;justify-content:space-between;align-items:center}.user-info{display:flex;align-items:center;gap:.75rem}.avatar{width:40px;height:40px;background:var(--accent);border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem}.greeting{font-size:.8rem;color:var(--text-secondary);margin-bottom:2px}.username{font-size:1rem;font-weight:600}.app-main{flex:1;padding:1.5rem 1rem calc(var(--safe-bottom) + 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}.balance-card{background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-tertiary) 100%);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border);box-shadow:var(--shadow)}.balance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.balance-header h2{font-size:1.1rem;font-weight:600;color:var(--text-secondary)}.balance-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.balance-item{text-align:center}.balance-label{display:block;font-size:.9rem;color:var(--text-secondary);margin-bottom:.5rem}.balance-amount{font-size:2.5rem;font-weight:700;letter-spacing:-.02em}.balance-arrow{animation:bounce 2s infinite}.balance-clear{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem}.btn-settle{width:100%;margin-top:1rem;background:var(--success);color:#fff;padding:.875rem;border-radius:var(--radius);border:none;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all .2s}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-card);border-radius:var(--radius);padding:1.25rem;border:1px solid var(--border);display:flex;gap:1rem;align-items:center}.stat-icon{width:40px;height:40px;background:var(--accent-light);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}.stat-content{flex:1;min-width:0}.stat-label{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem}.stat-value{font-size:1.25rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.action-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s;color:var(--text-primary);text-decoration:none;font-size:.9rem;font-weight:500}.action-card:active{transform:scale(.98)}.action-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff}.bg-accent{background:var(--accent)}.bg-success{background:var(--success)}.recent-section{margin-bottom:1rem}.recent-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-secondary)}.expense-item{background:var(--bg-card);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem;border:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.expense-info{flex:1;min-width:0}.expense-description{font-weight:500;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expense-meta{font-size:.8rem;color:var(--text-secondary)}.expense-amount{font-size:1.25rem;font-weight:700;color:var(--accent)}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.tab-header h2{font-size:1.5rem;font-weight:700}.expense-card{background:var(--bg-card);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;border:1px solid var(--border)}.expense-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.expense-date{font-size:.8rem;color:var(--text-secondary)}.btn-delete{background:transparent;border:none;color:var(--danger);padding:.25rem;cursor:pointer;border-radius:6px;transition:all .2s}.btn-delete:active{background:var(--danger-light)}.expense-description{font-weight:500;margin-bottom:.5rem}.expense-amount-large{font-size:1.75rem;font-weight:700;margin-bottom:1rem;color:var(--accent)}.expense-footer{display:flex;gap:.5rem;flex-wrap:wrap}.expense-badge{background:var(--bg-tertiary);padding:.375rem .75rem;border-radius:20px;font-size:.75rem;display:flex;align-items:center;gap:.375rem;color:var(--text-secondary)}.payment-card{background:var(--bg-card);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem;border:1px solid var(--border)}.payment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.payment-flow{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9rem}.payment-user{font-weight:600;color:var(--text-primary)}.payment-date{font-size:.8rem;color:var(--text-secondary)}.payment-amount{font-size:1.5rem;font-weight:700;color:var(--success);margin-bottom:.5rem}.payment-description{font-size:.9rem;color:var(--text-secondary)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary)}.empty-state svg{opacity:.3;margin-bottom:1rem}.empty-state p{margin-bottom:1.5rem}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary);border-top:1px solid var(--border);padding:.5rem 0 calc(var(--safe-bottom) + .5rem);display:flex;justify-content:space-around;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:40}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;transition:all .2s;border-radius:var(--radius)}.nav-item.active{color:var(--accent)}.nav-item span{font-size:.7rem;font-weight:500}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.8);display:flex;align-items:flex-end;justify-content:center;z-index:100;animation:fadeIn .2s}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;padding:1.5rem;padding-bottom:calc(var(--safe-bottom) + 1.5rem);animation:slideUp .3s}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h3{font-size:1.25rem;font-weight:700}.btn-close{background:transparent;border:none;color:var(--text-secondary);padding:.5rem;cursor:pointer;border-radius:10px;transition:all .2s}.btn-close:active{background:var(--bg-tertiary)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}input[type=text],input[type=number],input[type=date],input[type=password],select{width:100%;padding:.875rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all .2s;-webkit-appearance:none}input:focus,select:focus{outline:none;border-color:var(--accent);background:var(--bg-card)}.input-wrapper,.select-wrapper{position:relative}.input-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.input-with-prefix{position:relative}.input-with-prefix .prefix{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-weight:500}.input-with-prefix input{padding-left:2rem}.radio-group{display:flex;gap:.75rem}.radio-option{flex:1;position:relative}.radio-option input[type=radio]{position:absolute;opacity:0}.radio-option span{display:block;padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;transition:all .2s;font-weight:500}.radio-option input[type=radio]:checked+span{background:var(--accent);border-color:var(--accent);color:#fff}.modal-footer{display:flex;gap:.75rem;margin-top:2rem}.modal-footer button{flex:1}button{font-family:inherit;font-weight:600;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;user-select:none;-webkit-user-select:none}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;padding:.875rem 1.5rem;border-radius:var(--radius);font-size:1rem}.btn-primary:active:not(:disabled){transform:scale(.98);background:var(--accent-hover)}.btn-large{padding:1rem 2rem;font-size:1.1rem}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);padding:.875rem 1.5rem;border-radius:var(--radius);font-size:1rem}.btn-secondary:active:not(:disabled){transform:scale(.98);background:var(--bg-card)}.btn-icon{background:transparent;border:none;color:var(--text-secondary);padding:.5rem;border-radius:10px}.btn-icon:active{background:var(--bg-tertiary)}.btn-icon-primary{background:var(--accent);color:#fff;padding:.5rem;border-radius:10px}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-secondary{color:var(--text-secondary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn .3s ease-out}::-webkit-scrollbar{width:0px;height:0px}@supports (padding: max(0px)){.app-header{padding-top:max(1rem,env(safe-area-inset-top))}.bottom-nav{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}.modal-content{padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}}@media (min-width: 768px){.mobile-container{max-width:428px;margin:0 auto;box-shadow:0 0 60px #000c}.app-header{border-radius:0}.bottom-nav{max-width:428px;left:50%;transform:translate(-50%)}.modal-overlay{align-items:center;padding:2rem}.modal-content{border-radius:var(--radius-lg);margin:auto}}.loading{opacity:.6;pointer-events:none}@media (display-mode: standalone){.app-header{padding-top:calc(env(safe-area-inset-top) + 1rem)}}.expense-actions{display:flex;gap:.5rem}.btn-edit{background:transparent;border:none;color:var(--accent);padding:.25rem;cursor:pointer;border-radius:6px;transition:all .2s}.btn-edit:active{background:var(--accent-light)}
