*{box-sizing:border-box}html{width:100%;min-height:100%}body{background:#f3f4f6;min-width:320px;min-height:100vh;margin:0;font-family:Arial,sans-serif}.signup-container{justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.signup-form{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:400px;padding:32px;display:flex;box-shadow:0 4px 20px #00000014}.signup-form h2{text-align:center;margin:0 0 8px}.signup-form p{text-align:center;color:#666;margin:0 0 24px}.signup-form label{margin-bottom:6px;font-size:14px;font-weight:700}.signup-form input{border:1px solid #d1d5db;border-radius:6px;width:100%;min-width:0;margin-bottom:18px;padding:12px;font-size:16px}.signup-form input:focus{border-color:#0000;outline:2px solid #6366f1}.signup-form button{color:#fff;cursor:pointer;background:#4f46e5;border:none;border-radius:6px;width:100%;min-height:44px;padding:12px;font-size:16px}.signup-form button:hover{background:#4338ca}@media (width<=480px){.signup-container{align-items:flex-start;padding:16px}.signup-form{border-radius:10px;padding:24px 20px}.signup-form h2{font-size:23px}}*{box-sizing:border-box;margin:0;padding:0}body{color:#20243a;background:#f4f5fb;font-family:Inter,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer;transition:all .25s}button:disabled{opacity:.6;cursor:not-allowed}.home-container{background:radial-gradient(circle at 10% 5%,#7c5cff1a,#0000 28%),radial-gradient(circle at 95% 90%,#27ae9614,#0000 25%),#f4f5fb;min-height:100vh}.home-header{color:#fff;background:linear-gradient(120deg,#171b3b,#29245c,#44358a);justify-content:space-between;align-items:center;padding:28px 7%;display:flex;box-shadow:0 8px 30px #1f1b4b2e}.home-header h1{letter-spacing:-.7px;font-size:28px;font-weight:750}.home-header p{color:#c7c5e9;margin-top:7px;font-size:14px}.logout-button{color:#fff;background:#ffffff1f;border:1px solid #ffffff40;border-radius:9px;padding:10px 20px;font-weight:600}.logout-button:hover{background:#ffffff3b;transform:translateY(-2px)}.home-content{width:90%;max-width:1200px;margin:40px auto}.transactions-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.transactions-toolbar h2{color:#242642;letter-spacing:-.5px;font-size:25px;font-weight:750}.section-description{color:#8589a2;margin-top:7px;font-size:14px}.add-button{color:#fff;background:linear-gradient(120deg,#7057ed,#9275ff);border:none;border-radius:10px;padding:13px 23px;font-weight:650;box-shadow:0 6px 16px #7057ed40}.add-button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #7057ed59}.refresh-button{color:#6155b8;background:#fff;border:1px solid #e4e5f0;border-radius:9px;padding:10px 17px;font-weight:600}.refresh-button:hover{background:#f0edff;border-color:#c8bfff}.date-filter{background:#e6e5ee;border:1px solid #b1b5d7;border-radius:13px;align-items:center;gap:13px;margin-bottom:28px;padding:17px 20px;display:flex;box-shadow:0 4px 16px #282b5009}.date-filter label{color:#555a78;font-size:14px;font-weight:650}.date-filter input{color:#343650;background:#fafaff;border:1px solid #e1e2ed;border-radius:8px;outline:none;padding:10px 12px}.date-filter input:focus{border-color:#8874f5;box-shadow:0 0 0 3px #8874f51f}.transaction-section{background:#fff;border:1px solid #e9eaf3;border-radius:16px;margin-bottom:25px;padding:25px;transition:transform .25s,box-shadow .25s;box-shadow:0 5px 22px #282b500b}.transaction-section:hover{box-shadow:0 9px 28px #282b5013}.transaction-section h2{color:#292c49;align-items:center;gap:10px;margin-bottom:20px;font-size:19px;font-weight:750;display:flex}.transaction-section:first-of-type h2:before{content:"";background:#20b985;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #20b9851f}.transaction-section:last-of-type h2:before{content:"";background:#f06b78;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #f06b781f}.expense-list{flex-direction:column;gap:12px;display:flex}.expense-item{background:#fcfcff;border:1px solid #f0f0f6;border-radius:11px;justify-content:space-between;align-items:center;gap:15px;padding:17px 18px;transition:all .2s;display:flex}.expense-item:hover{background:#f8f7ff;border-color:#e4dfff;transform:translate(3px)}.expense-info h3{color:#333650;font-size:15px;font-weight:700}.expense-info p{color:#9295a9;margin-top:5px;font-size:13px}.credit-amount{color:#119b70;white-space:nowrap;background:#e9faf3;border-radius:8px;padding:9px 13px;font-size:15px;font-weight:750}.debit-amount{color:#e05265;white-space:nowrap;background:#fff0f1;border-radius:8px;padding:9px 13px;font-size:15px;font-weight:750}.empty-message{text-align:center;color:#9699ad;background:#fafaff;border:1px dashed #e3e4ef;border-radius:10px;padding:30px 15px;font-size:14px}.error-message{color:#d84d5d;background:#fff0f1;border-radius:9px;margin-bottom:20px;padding:15px;font-size:14px}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(7px);background:#13142ba6;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:18px;width:100%;max-width:490px;max-height:90vh;padding:30px;animation:.25s slideUp;overflow-y:auto;box-shadow:0 25px 80px #00000040}.modal-heading{justify-content:space-between;align-items:center;display:flex}.modal-heading h2{color:#292c49;font-size:22px;font-weight:750}.close-modal-button{color:#656782;background:#f1f0fa;border:none;border-radius:50%;width:35px;height:35px;font-size:25px;line-height:1}.close-modal-button:hover{color:#7057ed;background:#e8e4ff;transform:rotate(90deg)}.modal-content .section-description{margin-bottom:22px}.modal-content form{flex-direction:column;gap:9px;display:flex}.modal-content form label{color:#555a78;margin-top:7px;font-size:13px;font-weight:650}.modal-content form input,.modal-content form select{color:#343650;background:#fafaff;border:1px solid #e2e3ee;border-radius:9px;outline:none;width:100%;padding:12px 13px;transition:all .2s}.modal-content form input::placeholder{color:#b1b3c3}.modal-content form input:focus,.modal-content form select:focus{background:#fff;border-color:#8874f5;box-shadow:0 0 0 3px #8874f51f}.modal-content form .add-button{width:100%;margin-top:15px;padding:14px;font-size:15px}.modal-content::-webkit-scrollbar{width:7px}.modal-content::-webkit-scrollbar-thumb{background:#d8d3f7;border-radius:10px}.modal-content::-webkit-scrollbar-track{background:0 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.home-header{padding:22px 5%}.home-header h1{font-size:23px}.home-content{width:92%;margin:28px auto}.transactions-toolbar{flex-direction:column;align-items:flex-start}.date-filter{flex-wrap:wrap}.transaction-section{padding:19px}}@media (width<=480px){.home-header{padding:20px 4%}.home-header h1{font-size:20px}.home-header p{font-size:12px}.logout-button{padding:9px 12px;font-size:12px}.transactions-toolbar h2{font-size:21px}.date-filter{flex-direction:column;align-items:flex-start}.date-filter input,.date-filter .refresh-button{width:100%}.expense-item{padding:14px 12px}.expense-info h3{font-size:14px}.credit-amount,.debit-amount{padding:8px;font-size:13px}.modal-content{padding:22px 18px}}.edit-button{color:#5145cd;background:#eef0ff}.edit-button:hover{color:#fff;background:#5145cd}.delete-button{color:#dc3545;background:#fff0f0}.delete-button:hover{color:#fff;background:#dc3545}@media (width<=600px){.date-filter{flex-direction:column;align-items:flex-start;gap:10px}.date-navigation{justify-content:space-between;width:100%}.date-navigation input{flex:1;min-width:0}.expense-item{flex-wrap:wrap;gap:12px}.expense-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;width:100%}.transaction-buttons{margin-left:auto}.edit-button,.delete-button{padding:7px 11px}}.date-navigation{align-items:center;gap:10px;display:flex}.date-nav-button{color:#5145cd;cursor:pointer;background:#eef0ff;border:none;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:28px;font-weight:600;transition:all .2s;display:flex}.date-nav-button:hover{color:#fff;background:#5145cd;transform:translateY(-2px)}.date-navigation input{color:#333;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:10px;padding:11px 14px;font-size:15px}.expense-actions{align-items:center;gap:18px;display:flex}.transaction-buttons{align-items:center;gap:8px;display:flex}.edit-button,.delete-button{cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .2s}.edit-button{color:#5945c5;background:#eeeaff;border:1px solid #dcd4ff}.edit-button:hover{color:#fff;background:#5945c5;border-color:#5945c5;transform:translateY(-2px)}.delete-button{color:#d93636;background:#fff0f0;border:1px solid #ffd5d5}.delete-button:hover{color:#fff;background:#d93636;border-color:#d93636;transform:translateY(-2px)}@media (width<=600px){.date-filter{flex-direction:column;align-items:flex-start;gap:10px}.date-navigation{justify-content:space-between;width:100%}.date-navigation input{flex:1;min-width:0}.expense-item{flex-wrap:wrap;gap:12px}.expense-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;width:100%}.transaction-buttons{margin-left:auto}.edit-button,.delete-button{padding:7px 11px}}.delete-confirm-modal{max-width:420px}.confirmation-buttons{justify-content:flex-end;gap:12px;margin-top:25px;display:flex}.cancel-delete-button,.confirm-delete-button{cursor:pointer;border:none;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:all .2s}.cancel-delete-button{color:#333;background:#eee}.cancel-delete-button:hover{background:#ddd}.confirm-delete-button{color:#fff;background:#d93636}.confirm-delete-button:hover{background:#b92323}.premium-button{color:#222;cursor:pointer;background:linear-gradient(135deg,#f5b942,#e69b16);border:none;border-radius:8px;padding:10px 18px;font-weight:600;transition:all .2s}.premium-button:hover{transform:translateY(-2px);box-shadow:0 4px 10px #00000026}.home-header{justify-content:space-between;align-items:center;display:flex}.header-actions{align-items:center;gap:12px;margin-left:auto;display:flex}#cf_checkout:empty{display:none}#cf_checkout:not(:empty){z-index:9999;background:#fff;border-radius:12px;width:min(425px,100vw - 32px);height:min(700px,100vh - 32px);position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 10px 40px #00000040}body:has(#cf_checkout:not(:empty)):before{content:"";z-index:9998;background:#0000008c;position:fixed;inset:0}#cf_checkout iframe{border:none;width:100%;height:100%}.payment-result-overlay{z-index:10000;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.payment-result-modal{text-align:center;background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:360px;min-height:250px;padding:30px 25px;animation:.25s ease-out paymentPopupAppear;display:flex;box-shadow:0 15px 45px #0003}.payment-result-icon{border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:18px;font-size:32px;font-weight:700;display:flex}.payment-result-icon.success{color:#16a34a;background:#dcfce7}.payment-result-icon.failure{color:#dc2626;background:#fee2e2}.payment-result-modal h2{color:#1e293b;margin:0 0 24px;font-size:20px;line-height:1.5}.payment-result-close-button{color:#fff;cursor:pointer;background:#4f46e5;border:none;border-radius:8px;padding:11px 30px;font-size:15px;font-weight:600;transition:background .2s}.payment-result-close-button:hover{background:#4338ca}@keyframes paymentPopupAppear{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (width<=480px){.payment-result-modal{max-width:320px;padding:25px 20px}.payment-result-modal h2{font-size:18px}}.premium-popup-modal{max-width:420px}.premium-price-box{background:#fffaf0;border:1px solid #f3e3bd;border-radius:11px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;padding:17px 18px;display:flex}.premium-price-label{color:#555a78;font-size:14px;font-weight:650}.premium-price-amount{letter-spacing:-.5px;color:#292c49;white-space:nowrap;font-size:24px;font-weight:750}.premium-confirm-button{color:#222;background:linear-gradient(135deg,#f5b942,#e69b16);border:none;border-radius:10px;width:100%;padding:14px;font-size:15px;font-weight:650;box-shadow:0 6px 16px #e69b1640}.premium-confirm-button:hover{transform:translateY(-2px);box-shadow:0 9px 22px #e69b1659}@media (width<=480px){.premium-price-amount{font-size:21px}}.premium-user-text{color:#f5b942;white-space:nowrap;font-size:15px;font-weight:700}.leaderboard-button{color:#f5b942;cursor:pointer;background:#f5b94226;border:1px solid #f5b94273;border-radius:8px;padding:10px 18px;font-weight:600;transition:all .2s}.leaderboard-button:hover{background:#f5b94247;transform:translateY(-2px)}@media (width<=480px){.premium-user-text{font-size:12px}.leaderboard-button{padding:9px 12px;font-size:12px}}.leaderboard-modal{max-width:580px}.leaderboard-error-modal{max-width:420px}.leaderboard-error-modal .error-message{text-align:center;margin-bottom:0;font-weight:600}.leaderboard-table-wrapper{background:#fff;border:1px solid #e9eaf3;border-radius:14px;max-height:55vh;overflow-y:auto;box-shadow:0 4px 16px #282b500b}.leaderboard-table{border-collapse:separate;border-spacing:0;width:100%}.leaderboard-table thead th{z-index:1;color:#e4e2ff;letter-spacing:.8px;text-align:left;text-transform:uppercase;background:linear-gradient(120deg,#171b3b,#29245c,#44358a);padding:14px 18px;font-size:12px;font-weight:700;position:sticky;top:0}.leaderboard-table thead th:first-child{text-align:center;width:90px}.leaderboard-table thead th:last-child{text-align:right}.leaderboard-table tbody td{color:#333650;border-bottom:1px solid #f0f0f6;padding:15px 18px;font-size:15px;transition:background .2s}.leaderboard-table tbody tr:last-child td{border-bottom:none}.leaderboard-table tbody tr:hover td{background:#f8f7ff}.leaderboard-table tbody td:first-child{text-align:center}.leaderboard-name{color:#292c49;font-weight:700}.leaderboard-amount{text-align:right;color:#e05265;white-space:nowrap;font-weight:750}.rank-badge{color:#5145cd;background:#eef0ff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:750;display:inline-flex}.rank-badge.rank-1{color:#3a2800;background:linear-gradient(135deg,#f5b942,#e69b16);box-shadow:0 4px 12px #e69b1659}.rank-badge.rank-2{color:#2f3447;background:linear-gradient(135deg,#e3e6ee,#b5bbcb);box-shadow:0 4px 12px #8f96ac59}.rank-badge.rank-3{color:#3b2412;background:linear-gradient(135deg,#e8b48a,#c4824f);box-shadow:0 4px 12px #c4824f59}@media (width<=480px){.leaderboard-table thead th,.leaderboard-table tbody td{padding:12px 10px;font-size:13px}.leaderboard-table thead th:first-child{width:60px}.rank-badge{width:30px;height:30px;font-size:13px}}.category-field{align-items:stretch;gap:10px;display:flex}.modal-content form .category-field select{flex:1;width:auto;min-width:0}.category-field.loading select{opacity:.6;cursor:wait}.suggest-category-button{color:#5b45d6;white-space:nowrap;background:linear-gradient(120deg,#f4f1ff,#ebe6ff);border:1px solid #d9d0ff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:13px;font-weight:650;display:inline-flex;box-shadow:0 3px 10px #7057ed1f}.suggest-category-button:hover:not(:disabled){color:#fff;background:linear-gradient(120deg,#7057ed,#9275ff);border-color:#0000;transform:translateY(-2px);box-shadow:0 8px 18px #7057ed4d}.suggest-category-button:disabled{opacity:.9;cursor:wait}.suggest-icon{font-size:15px;line-height:1;animation:2.4s ease-in-out infinite suggestTwinkle;display:inline-block}.suggest-spinner{border:2px solid #7057ed40;border-top-color:#7057ed;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite suggestSpin}@keyframes suggestSpin{to{transform:rotate(360deg)}}@keyframes suggestTwinkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.75;transform:scale(1.25)rotate(20deg)}}@media (width<=480px){.category-field{flex-direction:column}.suggest-category-button{width:100%}}.daily-summary{align-items:stretch;gap:12px;margin-left:auto;display:flex}.summary-card{border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;min-width:170px;padding:10px 16px 10px 12px;transition:transform .2s,box-shadow .2s;display:flex}.summary-card:hover{transform:translateY(-2px)}.summary-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:750;line-height:1;display:flex}.summary-text{flex-direction:column;gap:2px;min-width:0;display:flex}.summary-label{letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:700}.summary-amount{letter-spacing:-.3px;white-space:nowrap;font-size:18px;font-weight:750}.summary-income{background:linear-gradient(135deg,#effcf6,#e2f8ee);border-color:#c9f0de}.summary-income:hover{box-shadow:0 8px 20px #20b9852e}.summary-income .summary-icon{color:#fff;background:#20b985;box-shadow:0 4px 10px #20b98559}.summary-income .summary-label{color:#3c9a77}.summary-income .summary-amount{color:#119b70}.summary-expense{background:linear-gradient(135deg,#fff5f6,#ffecee);border-color:#ffd9de}.summary-expense:hover{box-shadow:0 8px 20px #f06b782e}.summary-expense .summary-icon{color:#fff;background:#f06b78;box-shadow:0 4px 10px #f06b7859}.summary-expense .summary-label{color:#cf6571}.summary-expense .summary-amount{color:#e05265}@media (width<=768px){.daily-summary{flex:100%;margin-left:0}.summary-card{flex:1;min-width:0}}@media (width<=600px){.daily-summary{width:100%}}@media (width<=480px){.daily-summary{flex-direction:column}.summary-amount{font-size:16px}}.date-filter .date-navigation input{color:#292c49;letter-spacing:.3px;text-align:center;cursor:pointer;background:linear-gradient(135deg,#fff,#f6f3ff);border:2px solid #e4dfff;border-radius:12px;min-width:170px;padding:11px 16px;font-size:16px;font-weight:800;transition:all .2s;box-shadow:0 4px 14px #7057ed1f}.date-filter .date-navigation input:hover{border-color:#b9a9ff;transform:translateY(-1px);box-shadow:0 6px 18px #7057ed33}.date-filter .date-navigation input:focus{background:#fff;border-color:#7057ed;outline:none;box-shadow:0 0 0 4px #7057ed26}.date-navigation input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.85;filter:invert(35%)sepia(80%)saturate(2400%)hue-rotate(235deg);border-radius:8px;padding:5px;transition:background .2s,opacity .2s}.date-navigation input::-webkit-calendar-picker-indicator:hover{opacity:1;background:#ebe6ff}.date-navigation input::-webkit-datetime-edit-day-field:focus{color:#fff;background:#7057ed;border-radius:5px}.date-navigation input::-webkit-datetime-edit-month-field:focus{color:#fff;background:#7057ed;border-radius:5px}.date-navigation input::-webkit-datetime-edit-year-field:focus{color:#fff;background:#7057ed;border-radius:5px}@media (width<=600px){.date-filter .date-navigation input{min-width:0;font-size:15px}}.view-tabs{background:#fff;border:1px solid #e9eaf3;border-radius:14px;gap:6px;margin-bottom:28px;padding:6px;display:inline-flex;box-shadow:0 4px 16px #282b500b}.view-tab{color:#6b6f8d;letter-spacing:.2px;background:0 0;border:none;border-radius:10px;min-width:110px;padding:11px 24px;font-size:14px;font-weight:650}.view-tab:hover:not(.active){color:#5b45d6;background:#f4f1ff}.view-tab.active{color:#fff;background:linear-gradient(120deg,#7057ed,#9275ff);box-shadow:0 6px 16px #7057ed4d}.monthly-days{flex-direction:column;gap:22px;display:flex}.monthly-day-card{background:#fff;border:1px solid #e9eaf3;border-radius:16px;transition:box-shadow .25s;overflow:hidden;box-shadow:0 5px 22px #282b500b}.monthly-day-card:hover{box-shadow:0 9px 28px #282b5013}.monthly-day-header{background:#e6e5ee;border-bottom:1px solid #ebe7ff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.monthly-day-date{letter-spacing:-.3px;color:#292c49;align-items:center;gap:10px;font-size:18px;font-weight:750;display:flex}.monthly-day-date:before{content:"";background:#7057ed;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #7057ed24}.monthly-day-totals{flex-wrap:wrap;gap:10px;display:flex}.day-total{white-space:nowrap;border-radius:9px;align-items:center;gap:8px;padding:7px 13px;font-size:14px;font-weight:750;display:inline-flex}.day-total-label{letter-spacing:.6px;text-transform:uppercase;opacity:.8;font-size:11px;font-weight:700}.day-total-income{color:#119b70;background:#e9faf3}.day-total-expense{color:#e05265;background:#fff0f1}.monthly-day-card .expense-list{padding:18px 22px 22px}@media (width<=768px){.view-tabs{width:100%;display:flex}.view-tab{flex:1;min-width:0;padding:11px 10px}}@media (width<=480px){.monthly-day-header{padding:14px 16px}.monthly-day-date{font-size:16px}.monthly-day-card .expense-list{padding:14px 12px 16px}.monthly-day-totals{width:100%}.day-total{flex:1;justify-content:space-between;font-size:13px}}.signup-form .forgot-password-link{color:#4f46e5;background:0 0;border-radius:6px;align-self:center;width:auto;min-height:0;margin:14px 0 22px;padding:4px 6px;font-size:14px;font-weight:600;transition:color .2s,background .2s}.signup-form .forgot-password-link:hover{color:#4338ca;background:#eef2ff}.reset-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);background:#11182799;justify-content:center;align-items:center;padding:20px;animation:.2s resetFadeIn;display:flex;position:fixed;inset:0}.reset-modal{text-align:center;background:#fff;border-radius:18px;width:100%;max-width:420px;padding:36px 32px 32px;animation:.25s resetSlideUp;position:relative;box-shadow:0 25px 80px #00000040}.reset-close-button{color:#6b7280;cursor:pointer;background:#f3f4f6;border:none;border-radius:50%;width:34px;height:34px;font-size:24px;line-height:1;transition:all .2s;position:absolute;top:14px;right:14px}.reset-close-button:hover{color:#4f46e5;background:#e0e7ff;transform:rotate(90deg)}.reset-icon{color:#4f46e5;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 18px;font-size:28px;display:flex;box-shadow:0 8px 20px #4f46e52e}.reset-icon.success{color:#16a34a;background:linear-gradient(135deg,#dcfce7,#bbf7d0);font-size:32px;font-weight:700;box-shadow:0 8px 20px #16a34a33}.reset-modal h2{color:#1f2937;margin:0 0 8px;font-size:22px;font-weight:750}.reset-description{color:#6b7280;margin:0 0 24px;font-size:14px;line-height:1.6}.reset-description strong{color:#4f46e5;word-break:break-all}.reset-modal form{text-align:left;flex-direction:column;display:flex}.reset-modal label{color:#374151;margin-bottom:6px;font-size:13px;font-weight:700}.reset-modal input{background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;outline:none;width:100%;min-width:0;margin-bottom:18px;padding:12px 14px;font-size:16px;transition:all .2s}.reset-modal input:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 4px #6366f126}.reset-error{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:16px;padding:12px 14px;font-size:14px;font-weight:600}.reset-primary-button{color:#fff;cursor:pointer;background:linear-gradient(120deg,#4f46e5,#6366f1);border:none;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:46px;padding:12px;font-size:15px;font-weight:650;transition:all .2s;display:inline-flex;box-shadow:0 6px 16px #4f46e547}.reset-primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 22px #4f46e561}.reset-primary-button:disabled{opacity:.85;cursor:wait}.reset-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite resetSpin}@keyframes resetFadeIn{0%{opacity:0}to{opacity:1}}@keyframes resetSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes resetSpin{to{transform:rotate(360deg)}}@media (width<=480px){.reset-modal{padding:32px 20px 24px}}.pagination{border-top:1px dashed #e4e0ff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:16px;display:flex}.pagination-info{color:#8589a2;font-size:13px;font-weight:600}.pagination-controls{align-items:center;gap:6px;display:flex}.pagination-button{color:#5b45d6;background:#fff;border:1px solid #e4e0ff;border-radius:10px;min-width:38px;height:38px;padding:0 10px;font-size:14px;font-weight:650}.pagination-button:hover:not(:disabled):not(.active){background:#f1edff;border-color:#cfc8ff;transform:translateY(-1px)}.pagination-button.active{color:#fff;cursor:default;background:linear-gradient(120deg,#7057ed,#9275ff);border-color:#0000;box-shadow:0 6px 14px #7057ed4d}.pagination-button:disabled{opacity:.4;cursor:not-allowed}.pagination-arrow{padding-bottom:3px;font-size:22px;line-height:1}.pagination-ellipsis{text-align:center;color:#a3a6bd;min-width:24px;font-weight:700}.monthly-days+.pagination{background:#fff;border:1px solid #e4e0ff;border-radius:14px;margin-top:16px;padding:12px 16px;box-shadow:0 4px 16px #29245c0d}@media (width<=600px){.pagination{justify-content:center}.pagination-info{text-align:center;width:100%}}@media (width<=480px){.pagination-button{min-width:34px;height:34px}}.home-content .transaction-section.income-section h2:before{background:#20b985;box-shadow:0 0 0 5px #20b9851f}.home-content .transaction-section.expense-section h2:before{background:#f06b78;box-shadow:0 0 0 5px #f06b781f}.transaction-section~.pagination{background:#fff;border:1px solid #e4e0ff;border-radius:14px;margin-top:0;padding:12px 16px;box-shadow:0 4px 16px #29245c0d}.monthly-day-card .monthly-day-header{padding:10px 18px}.monthly-day-card .monthly-day-date{font-size:16px}.monthly-day-card .day-total{padding:4px 11px;font-size:13px}.monthly-day-card .day-total-label{font-size:10px}.monthly-day-card .day-entries{padding:10px 16px 12px}.monthly-day-card .day-entries+.day-entries{border-top:1px dashed #e4e0ff;padding-top:10px}.monthly-day-card .day-entries .expense-list{gap:6px;padding:0}.day-entries-title{letter-spacing:.8px;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;font-weight:750;display:flex}.day-entries-title:before{content:"";border-radius:50%;width:7px;height:7px}.day-entries-credit .day-entries-title{color:#119b70}.day-entries-credit .day-entries-title:before{background:#20b985;box-shadow:0 0 0 4px #20b9851f}.day-entries-debit .day-entries-title{color:#e05265}.day-entries-debit .day-entries-title:before{background:#f06b78;box-shadow:0 0 0 4px #f06b781f}.monthly-day-card .expense-item.monthly-entry{border-radius:8px;flex-wrap:nowrap;gap:10px;padding:6px 12px}.monthly-day-card .monthly-entry .expense-info h3{font-size:13px;line-height:1.25}.monthly-day-card .monthly-entry .expense-info p{margin-top:1px;font-size:11.5px;line-height:1.25}.monthly-day-card .monthly-entry .credit-amount,.monthly-day-card .monthly-entry .debit-amount{border-radius:6px;padding:3px 9px;font-size:12.5px}.monthly-day-card .day-entries .pagination{gap:8px;margin-top:8px;padding-top:8px}.monthly-day-card .day-entries .pagination-info{font-size:11.5px}.monthly-day-card .day-entries .pagination-controls{gap:4px}.monthly-day-card .day-entries .pagination-button{border-radius:8px;min-width:28px;height:28px;padding:0 7px;font-size:12px}.monthly-day-card .day-entries .pagination-arrow{padding-bottom:2px;font-size:18px}@media (width<=480px){.monthly-day-card .monthly-day-header{padding:9px 12px}.monthly-day-card .day-entries{padding:8px 10px 10px}.monthly-day-card .expense-item.monthly-entry{padding:6px 10px}}.pagination-left{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.pagination-size{align-items:center;gap:8px;margin:0;display:inline-flex}.pagination-size-label{color:#8589a2;white-space:nowrap;font-size:13px;font-weight:600}.pagination-size-select{color:#5b45d6;cursor:pointer;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1.5l5 5 5-5' fill='none' stroke='%235b45d6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 11px center;background-repeat:no-repeat;border:1px solid #e4e0ff;border-radius:10px;outline:none;min-width:68px;height:38px;padding:0 30px 0 12px;font-size:14px;font-weight:650;transition:all .2s}.pagination-size-select:hover{background-color:#f1edff;border-color:#cfc8ff}.pagination-size-select:focus{border-color:#8874f5;box-shadow:0 0 0 3px #8874f526}@media (width<=600px){.pagination-left{justify-content:center;width:100%}}@media (width<=480px){.pagination-size-select{height:34px}}.monthly-table-card{background:#fff;border:1px solid #e9eaf3;border-radius:16px;overflow:hidden;box-shadow:0 5px 22px #282b500b}.monthly-table-wrapper{width:100%;overflow-x:auto}.monthly-table{border-collapse:separate;border-spacing:0;width:100%;min-width:680px}.monthly-table thead th{color:#e4e2ff;letter-spacing:.8px;text-align:left;text-transform:uppercase;white-space:nowrap;background:linear-gradient(120deg,#171b3b,#29245c,#44358a);padding:11px 16px;font-size:11.5px;font-weight:700}.monthly-table thead th.amount-column{text-align:right}.monthly-table tbody td{color:#333650;vertical-align:middle;border-bottom:1px solid #f0f0f6;padding:7px 16px;font-size:13px;line-height:1.3;transition:background .2s}.monthly-table tbody tr:nth-child(2n) td{background:#fcfcff}.monthly-table tbody tr:hover td{background:#f4f1ff}.monthly-table tbody tr:last-child td{border-bottom:none}.monthly-table td.amount-column{text-align:right;white-space:nowrap}.monthly-date-cell{color:#292c49;white-space:nowrap;font-weight:650}.monthly-description-cell{text-overflow:ellipsis;white-space:nowrap;color:#555a78;max-width:260px;overflow:hidden}.category-chip{color:#5b45d6;white-space:nowrap;background:#f1edff;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:650;display:inline-block}.table-amount{white-space:nowrap;border-radius:6px;padding:2px 9px;font-size:12.5px;font-weight:750;display:inline-block}.table-amount-expense{color:#e05265;background:#fff0f1}.table-amount-income{color:#119b70;background:#e9faf3}.table-amount-empty{color:#c3c5d4;font-weight:600}.monthly-table-card .pagination{background:#fafaff;border-top:1px solid #ebe7ff;margin:0;padding:12px 16px}@media (width<=480px){.monthly-table thead th,.monthly-table tbody td{padding-left:12px;padding-right:12px}}.date-filter,.monthly-summary{flex-wrap:wrap}.summary-savings{background:linear-gradient(135deg,#f4f1ff,#ebe6ff);border-color:#d9d0ff}.summary-savings:hover{box-shadow:0 8px 20px #7057ed2e}.summary-savings .summary-icon{color:#fff;background:#7057ed;box-shadow:0 4px 10px #7057ed59}.summary-savings .summary-label{color:#7a67d8}.summary-savings .summary-amount{color:#5b45d6}.summary-savings-negative{background:linear-gradient(135deg,#fffaf0,#fff3dc);border-color:#f3e3bd}.summary-savings-negative:hover{box-shadow:0 8px 20px #e69b1633}.summary-savings-negative .summary-icon{background:#e69b16;box-shadow:0 4px 10px #e69b1659}.summary-savings-negative .summary-label{color:#b9801a}.summary-savings-negative .summary-amount{color:#c27d0e}@media (width<=768px){.monthly-summary .summary-card{flex:160px}}@media (width<=480px){.monthly-summary .summary-card{flex:100%}}.expense-item .expense-info{flex:1 1 0;min-width:0}.expense-item .expense-info h3,.expense-item .expense-info p{overflow-wrap:anywhere;word-break:break-word;white-space:normal}.expense-item .expense-info p{line-height:1.45}.expense-item .expense-actions,.expense-item>.credit-amount,.expense-item>.debit-amount{flex-shrink:0}.monthly-table .monthly-description-cell{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:break-word;min-width:200px;max-width:360px;line-height:1.4;overflow:visible}.monthly-table tbody td{vertical-align:middle}.transactions-toolbar h2 .year-badge{color:#fff;letter-spacing:.3px;vertical-align:middle;background:linear-gradient(120deg,#7057ed,#9275ff);border-radius:999px;margin-left:12px;padding:3px 14px;font-size:17px;font-weight:750;display:inline-block;box-shadow:0 6px 14px #7057ed47}.date-filter .year-navigation input{width:120px;min-width:0}.yearly-table{min-width:560px}.yearly-month-cell{color:#292c49;white-space:nowrap;font-weight:700}.table-amount-savings{color:#5b45d6;background:#f1edff}.table-amount-savings-negative{color:#c27d0e;background:#fff3dc}@media (width<=600px){.date-filter .year-navigation input{flex:1;width:auto}}@media (width<=480px){.transactions-toolbar h2 .year-badge{margin-left:8px;padding:2px 11px;font-size:15px}}.modal-content form label .optional-label{color:#9a9db3;font-weight:500}.modal-content form textarea{color:#343650;width:100%;min-height:84px;font:inherit;resize:vertical;background:#fafaff;border:1px solid #e2e3ee;border-radius:9px;outline:none;padding:12px 13px;line-height:1.45;transition:all .2s}.modal-content form textarea::placeholder{color:#b1b3c3}.modal-content form textarea:focus{background:#fff;border-color:#8874f5;box-shadow:0 0 0 3px #8874f51f}.modal-content.transaction-form-modal{max-height:none;padding:22px 26px 24px;overflow:visible}.transaction-form-modal .modal-content .section-description,.modal-content.transaction-form-modal .section-description{margin-top:4px;margin-bottom:12px}.modal-content.transaction-form-modal form{gap:4px}.modal-content.transaction-form-modal form label{margin-top:6px}.modal-content.transaction-form-modal form input,.modal-content.transaction-form-modal form select{padding:9px 12px}.modal-content.transaction-form-modal .category-field{align-items:center}.modal-content.transaction-form-modal .suggest-category-button{min-height:38px}.modal-content.transaction-form-modal form textarea{resize:none;min-height:62px;padding:9px 12px}.modal-content.transaction-form-modal form .add-button{margin-top:12px;padding:12px}.modal-content form label.notes-label{justify-content:space-between;align-items:baseline;display:flex}.notes-counter{color:#9a9db3;font-size:12px;font-weight:600}@media (height<=620px){.modal-content.transaction-form-modal{max-height:96vh;overflow-y:auto}}@media (width<=480px){.modal-content.transaction-form-modal{padding:18px 16px 20px}}.download-report-button{color:#fff;white-space:nowrap;background:linear-gradient(120deg,#7057ed,#9275ff);border:none;border-radius:10px;justify-content:center;align-items:center;gap:9px;padding:12px 20px;font-size:14px;font-weight:650;transition:all .2s;display:inline-flex;box-shadow:0 5px 14px #7057ed38}.download-report-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #7057ed52}.download-report-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.download-icon{font-size:20px;font-weight:700;line-height:1}@media (width<=768px){.download-report-button{align-self:flex-start}}@media (width<=480px){.download-report-button{width:100%}}.toast{color:#fff;z-index:1000;border-radius:8px;padding:12px 24px;font-weight:600;animation:.25s ease-out toast-in;position:fixed;top:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0003}.toast.success{background:#2e9e5b}.toast.error{background:#d64545}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.signup-form button:disabled{opacity:.6;cursor:not-allowed}
