@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&family=Playfair+Display:wght@700&display=swap);:root{--green-dark:#1c3a1c;--green-mid:#2d5a27;--green-light:#4a8c3f;--green-pale:#e8f5e4;--earth:#8b5e3c;--earth-light:#c4956a;--cream:#faf7f0;--text-dark:#1a2b1a;--text-mid:#4a5e44;--text-light:#7a9472;--white:#fff;--border:#d4e4cc;--shadow:0 2px 12px #1c3a1c1f;--shadow-lg:0 8px 32px #1c3a1c2e;--radius:14px;--radius-sm:8px;--nav-height:64px;--header-h:56px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#faf7f0;background:var(--cream);color:#1a2b1a;color:var(--text-dark);font-family:Nunito,sans-serif}.layout,body{min-height:100vh}.layout{display:flex;flex-direction:column}.page-header{align-items:center;background:#1c3a1c;background:var(--green-dark);box-shadow:0 2px 8px #0003;color:#fff;color:var(--white);display:flex;gap:12px;height:56px;height:var(--header-h);padding:0 16px;position:sticky;top:0;z-index:100}.page-header h1{flex:1 1;font-family:Playfair Display,serif;font-size:1.2rem}.page-content{flex:1 1;padding:16px 16px 80px}.bottom-nav{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;background:#1c3a1c;background:var(--green-dark);bottom:0;display:flex;height:64px;height:var(--nav-height);left:0;overflow-x:auto;overflow-y:hidden;position:fixed;right:0;scrollbar-width:none;z-index:100}.bottom-nav::-webkit-scrollbar{display:none}.nav-item{align-items:center;border-radius:8px;border-radius:var(--radius-sm);color:#ffffff80;display:flex;flex:0 0 auto;flex-direction:column;font-size:.6rem;font-weight:700;gap:2px;letter-spacing:.03em;min-width:60px;padding:8px 10px;text-decoration:none;transition:color .2s}.nav-item svg{height:22px;width:22px}.nav-item.active{color:#7dd87a}.card{background:#fff;background:var(--white);border:1px solid #d4e4cc;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);box-shadow:0 2px 12px #1c3a1c1f;box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.card-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:16px}.stat-card{background:#fff;background:var(--white);border:1px solid #d4e4cc;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);box-shadow:0 2px 12px #1c3a1c1f;box-shadow:var(--shadow);padding:14px}.stat-card .label{color:#7a9472;color:var(--text-light);font-size:.7rem;font-weight:700;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.stat-card .value{color:#1c3a1c;color:var(--green-dark);font-size:1.4rem;font-weight:800}.stat-card .value.negative{color:#c0392b}.stat-card .value.positive{color:#27ae60}.stat-card .icon{font-size:1.5rem;margin-bottom:6px}.btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:700;gap:6px;padding:10px 18px;transition:all .15s}.btn-primary{background:#2d5a27;background:var(--green-mid);color:#fff;color:var(--white)}.btn-primary:hover{background:#4a8c3f;background:var(--green-light)}.btn-danger{background:#fee;color:#c0392b}.btn-fab{align-items:center;background:#2d5a27;background:var(--green-mid);border:none;border-radius:50%;bottom:80px;bottom:calc(var(--nav-height) + 16px);box-shadow:0 4px 16px #2d5a2773;color:#fff;color:var(--white);cursor:pointer;display:flex;font-size:1.6rem;height:56px;justify-content:center;position:fixed;right:16px;transition:transform .15s,box-shadow .15s;width:56px;z-index:150}.btn-fab:hover{box-shadow:0 6px 20px #2d5a278c;transform:scale(1.05)}.form-group{margin-bottom:14px}.form-group label{color:#4a5e44;color:var(--text-mid);display:block;font-size:.8rem;font-weight:700;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{background:#fff;background:var(--white);border:1.5px solid #d4e4cc;border:1.5px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#1a2b1a;color:var(--text-dark);font-family:Nunito,sans-serif;font-size:1rem;outline:none;padding:11px 14px;transition:border-color .15s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4a8c3f;border-color:var(--green-light)}.form-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.modal-overlay{align-items:flex-end;background:#00000080;display:flex;inset:0;position:fixed;z-index:300}.modal-sheet{animation:slideUp .25s ease;background:#fff;background:var(--white);border-radius:14px 14px 0 0;border-radius:var(--radius) var(--radius) 0 0;max-height:90vh;overflow-y:auto;padding:20px 16px calc(20px + env(safe-area-inset-bottom));width:100%}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-handle{background:#d4e4cc;background:var(--border);border-radius:2px;height:4px;margin:0 auto 16px;width:36px}.modal-title{color:#1c3a1c;color:var(--green-dark);font-family:Playfair Display,serif;font-size:1.2rem;margin-bottom:16px}.txn-item{align-items:flex-start;border-bottom:1px solid #d4e4cc;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 0}.txn-item:last-child{border-bottom:none}.txn-main{flex:1 1}.txn-name{color:#1a2b1a;color:var(--text-dark);font-size:.95rem;font-weight:700}.txn-meta{color:#7a9472;color:var(--text-light);font-size:.75rem;margin-top:2px}.txn-amount{font-size:1rem;font-weight:800}.txn-amount.expense{color:#c0392b}.txn-amount.income{color:#27ae60}.badge{border-radius:20px;display:inline-block;font-size:.7rem;font-weight:700;padding:2px 8px}.badge-paid{background:#e8f8ee;color:#27ae60}.badge-pending{background:#fef9e7;color:#d4a017}.badge-partial{background:#fdf0e8;color:#e67e22}.auth-page{align-items:center;background:linear-gradient(160deg,#1c3a1c,#2d5a27 40%,#e8f5e4);background:linear-gradient(160deg,var(--green-dark) 0,var(--green-mid) 40%,var(--green-pale) 100%);display:flex;justify-content:center;min-height:100vh;padding:24px 16px}.auth-card{background:#fff;background:var(--white);border-radius:14px;border-radius:var(--radius);box-shadow:0 8px 32px #1c3a1c2e;box-shadow:var(--shadow-lg);max-width:400px;padding:28px 24px;width:100%}.auth-logo{margin-bottom:24px;text-align:center}.auth-logo .logo-icon{display:block;font-size:3rem;margin-bottom:8px}.auth-logo h1{color:#1c3a1c;color:var(--green-dark);font-family:Playfair Display,serif;font-size:1.8rem}.auth-logo p{color:#7a9472;color:var(--text-light);font-size:.85rem;margin-top:2px}.period-tabs{background:#e8f5e4;background:var(--green-pale);border-radius:8px;border-radius:var(--radius-sm);display:flex;margin-bottom:16px;padding:3px}.period-tab{background:#0000;border:none;border-radius:6px;color:#4a5e44;color:var(--text-mid);cursor:pointer;flex:1 1;font-family:Nunito,sans-serif;font-size:.8rem;font-weight:700;padding:7px;transition:all .15s}.period-tab.active{background:#2d5a27;background:var(--green-mid);color:#fff;color:var(--white)}.section-title{color:#1c3a1c;color:var(--green-dark);font-family:Playfair Display,serif;font-size:1.1rem;margin-bottom:12px}.chip-group{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.chip{background:#fff;background:var(--white);border:1.5px solid #d4e4cc;border:1.5px solid var(--border);border-radius:20px;color:#4a5e44;color:var(--text-mid);cursor:pointer;font-family:Nunito,sans-serif;font-size:.78rem;font-weight:700;padding:5px 12px;transition:all .12s}.chip.active{background:#1c3a1c;background:var(--green-dark);border-color:#1c3a1c;border-color:var(--green-dark);color:#fff;color:var(--white)}.empty-state{color:#7a9472;color:var(--text-light);padding:40px 20px;text-align:center}.empty-state .icon{font-size:3rem;margin-bottom:12px}.empty-state p{font-size:.9rem}.settings-tabs{-webkit-overflow-scrolling:touch;display:flex;gap:6px;overflow-x:auto;padding:0 0 12px;scrollbar-width:none}.settings-tabs::-webkit-scrollbar{display:none}.settings-tab{background:#fff;background:var(--white);border:1.5px solid #d4e4cc;border:1.5px solid var(--border);border-radius:20px;color:#4a5e44;color:var(--text-mid);cursor:pointer;flex-shrink:0;font-size:.82rem;font-weight:700;padding:8px 16px;transition:all .2s;white-space:nowrap}.settings-tab.active{background:#1c3a1c;background:var(--green-dark);border-color:#1c3a1c;border-color:var(--green-dark);color:#fff;color:var(--white)}
/*# sourceMappingURL=main.ec4c1da3.css.map*/