body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:#f5f5f5;display:flex;min-height:100vh}.sidebar{background:#333;box-shadow:2px 0 4px #0000001a;display:flex;flex-direction:column;gap:30px;padding:25px 20px;width:220px}.nav-brand{color:#fff;font-size:1.4em;font-weight:700;text-decoration:none}.nav-brand:hover{color:#4caf50}.nav-links{display:flex;flex-direction:column;gap:18px}.nav-links a{color:#fff;font-weight:500;text-decoration:none;transition:color .3s}.nav-links a:hover{color:#4caf50}.content{flex:1 1;padding:30px}@media (max-width:900px){.App{flex-direction:column}.sidebar{align-items:center;flex-direction:row;gap:16px;justify-content:space-between;width:100%}.nav-links{flex-direction:row;flex-wrap:wrap;gap:12px}.content{padding:20px}}@media (max-width:600px){.sidebar{padding:16px 14px}.nav-brand{font-size:1.1em}.content{padding:16px}}.dashboard-wrapper{align-items:stretch;display:flex;gap:25px;width:100%}.left-column{display:flex;flex:3 1;flex-direction:column;gap:25px}.right-column{display:flex;flex:1 1;flex-direction:column}.summary-row{display:flex;gap:20px}.summary-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;flex:1 1;padding:20px}.charts-split-row{display:flex;gap:20px}.chart-box,.side-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;flex:1 1;padding:20px}.side-list{display:flex;flex-direction:column;justify-content:flex-start}.side-row{align-items:center;display:flex;gap:10px;margin-bottom:12px}.side-track{background:#eee;flex:1 1}.side-fill,.side-track{border-radius:6px;height:10px}:root{--color-0:#4caf50;--color-1:#ffb74d;--color-2:#42a5f5;--color-3:#ef5350;--color-4:#8e24aa;--color-5:#90a4ae}.charts-split-row .chart-box{display:flex;flex-direction:column;justify-content:center}.goal-side-row{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.goal-name{font-size:.95rem;font-weight:500}.goal-track{background:#eee;border-radius:6px;height:12px;overflow:hidden;width:100%}.goal-fill{border-radius:6px;height:100%}.goal-percent{color:#555;font-size:.85rem;text-align:right}@media (max-width:1024px){.dashboard-wrapper{flex-direction:column}.right-column{flex:none}}@media (max-width:768px){.charts-split-row,.summary-row{flex-direction:column}}.dashboard_container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:50px auto;padding:30px}.form-item input,.form-item select{background-color:#f8f8f8;border:1px solid #ccc;border-radius:8px;font-size:1em;outline:none;padding:12px 14px;transition:.25s ease}.form-item select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg fill=%27gray%27 height=%2718%27 width=%2718%27 viewBox=%270 0 20 20%27 xmlns=%27http://www.w3.org/2000/svg%27><polygon points=%270,0 20,0 10,12%27/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;cursor:pointer}@media (max-width:768px){.grid-form{grid-template-columns:1fr;padding:20px}.full-row,.save-btn{grid-column:span 1}}.entry-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:50px auto;max-width:700px;padding:30px}.entry-container h2{color:#333;margin-top:0}@media (max-width:768px){.entry-container{margin:30px 16px;padding:20px}}@media (min-width:769px){.auth-form{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.password-wrapper input{padding-right:35px}.eye-btn{font-size:16px;right:8px}.extra-links{gap:4px}.text-link{font-size:12px}.submit-btn{font-size:.95em;padding:9px 14px}}@media (max-width:768px){.page-container{margin:30px 16px;padding:20px}}@media (max-width:480px){.page-container{margin:15px;max-width:100%;padding:16px}.page-container h2{font-size:1.3em;margin-bottom:15px}}.grid-form{grid-gap:22px;display:grid;gap:22px;grid-template-columns:1fr}.submit-btn{background:#4caf50;border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:600;grid-column:span 1;padding:12px 18px;transition:.25s}.submit-btn:hover{background:#45a049;transform:translateY(-2px)}.submit-btn:active{transform:translateY(0)}.password-wrapper{position:relative}.password-wrapper input{padding-right:40px}.eye-btn{background:none;border:none;cursor:pointer;font-size:18px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}@media (min-width:769px){.grid-form{grid-template-columns:repeat(2,1fr)}.full-row,.message,.submit-btn{grid-column:span 2}.text-link{width:150px}}@media (max-width:768px){.grid-form{grid-template-columns:1fr}.full-row,.message,.submit-btn{grid-column:span 1}.text-link{font-size:13px;width:100%}.submit-btn{font-size:1em;padding:10px 16px}}@media (max-width:480px){.password-wrapper input{padding-right:35px}.eye-btn{font-size:16px;right:8px}.extra-links{gap:4px}.text-link{font-size:12px}.submit-btn{font-size:.95em;padding:9px 14px}.form-item input{font-size:16px}}.page-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:50px auto;max-width:400px;padding:30px}.page-container h2{color:#333;margin-top:0}@media (max-width:600px){.page-container{margin:20px;padding:20px}}:root{--primary-green:#4caf50;--light-green:#e8f5e9;--dark-green:#2e7d32;--red:#f44336;--light-red:#ffebee;--dark-red:#c62828;--blue:#2196f3;--text-dark:#333;--text-light:#666;--text-lighter:#999;--border-light:#f0f0f0;--border-gray:#e0e0e0;--bg-white:#fff;--shadow:0 4px 15px #0000001a;--shadow-hover:0 8px 25px #00000026}.stat-card,.transaction-filters,.transaction-list{background:#fff;background:var(--bg-white);border-radius:12px;box-shadow:0 4px 15px #0000001a;box-shadow:var(--shadow)}.transaction-row,.transaction-table-header{grid-gap:20px;display:grid;gap:20px;grid-template-columns:120px 1fr 100px 130px 120px}.transaction-list{overflow:hidden}.transaction-table-header{background:#4caf50;background:var(--primary-green);color:#fff;color:var(--bg-white);font-size:.95em;font-weight:600;letter-spacing:.5px;padding:20px;text-transform:uppercase}.transaction-row{align-items:center;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light);padding:18px 20px;transition:background-color .3s ease}.transaction-row:hover{background-color:#f9f9f9}.transaction-row:last-child{border-bottom:none}.transaction-row.transaction-income{border-left:4px solid #4caf50;border-left:4px solid var(--primary-green)}.transaction-row.transaction-expense{border-left:4px solid #f44336;border-left:4px solid var(--red)}.col-category,.col-date{font-size:.95em}.col-date{color:#555;font-weight:500}.col-description{color:#333;color:var(--text-dark);font-weight:500}.col-type{text-align:center}.col-amount{font-size:1.05em;font-weight:600;text-align:right}.col-category{color:#666;color:var(--text-light);text-align:right}.type-badge{border-radius:20px;display:inline-block;font-size:.85em;font-weight:600;padding:6px 12px;text-transform:uppercase}.type-badge.income{background-color:#e8f5e9;background-color:var(--light-green);color:#2e7d32;color:var(--dark-green)}.type-badge.expense{background-color:#ffebee;background-color:var(--light-red);color:#c62828;color:var(--dark-red)}.amount{display:inline-block}.amount.income{color:#4caf50;color:var(--primary-green)}.amount.expense{color:#f44336;color:var(--red)}.transaction-empty{border-radius:12px;padding:60px 20px;text-align:center}.transaction-empty p{color:#999;color:var(--text-lighter);font-size:1.1em;margin:0}.transaction-filters{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px;padding:20px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#333;color:var(--text-dark);font-size:.95em;font-weight:600}.filter-select,.search-input{background-color:#fff;background-color:var(--bg-white);border:2px solid #e0e0e0;border:2px solid var(--border-gray);border-radius:8px;font-family:inherit;font-size:1em;padding:12px 15px;transition:border-color .3s ease}.filter-select:focus,.search-input:focus{border-color:#4caf50;border-color:var(--primary-green);box-shadow:0 0 0 3px #4caf501a;outline:none}.filter-select{cursor:pointer}.search-input::placeholder{color:#999;color:var(--text-lighter)}.transaction-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{padding:25px;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 8px 25px #00000026;box-shadow:var(--shadow-hover);transform:translateY(-5px)}.stat-label{color:#666;color:var(--text-light);font-size:.95em;font-weight:500;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.stat-amount{font-size:2em;font-weight:700}.stat-amount.income,.stat-amount.positive{color:#4caf50;color:var(--primary-green)}.stat-amount.expense,.stat-amount.negative{color:#f44336;color:var(--red)}.balance-card.positive{background:#4caf50;background:var(--primary-green);color:#fff;color:var(--bg-white)}.balance-card.negative{background:red;color:#fff;color:var(--bg-white)}.balance-card .stat-label{color:#ffffffe6}.balance-card .stat-amount{color:#fff;color:var(--bg-white)}.income-card{border-left:5px solid #4caf50;border-left:5px solid var(--primary-green)}.expense-card{border-left:5px solid #f44336;border-left:5px solid var(--red)}.transactions-card{border-left:5px solid #2196f3;border-left:5px solid var(--blue)}.transactions-card .stat-amount{color:#2196f3;color:var(--blue)}@media (max-width:1024px){.transaction-row,.transaction-table-header{grid-template-columns:1fr 1fr 1fr}.col-amount,.col-category,.col-date,.col-type{text-align:left}}@media (max-width:768px){.transaction-list{border-radius:8px}.transaction-table-header{display:none}.transaction-row{border-bottom:2px solid #f0f0f0;border-bottom:2px solid var(--border-light);border-left:none;grid-template-columns:1fr;padding:15px}.transaction-row:before{color:#4caf50;color:var(--primary-green);content:attr(data-label);display:block;font-size:.85em;font-weight:600;margin-bottom:5px}.col-date:before{content:"Date: "}.col-description:before{content:"Description: "}.col-type:before{content:"Type: "}.col-amount:before{content:"Amount: "}.col-category:before{content:"Category: "}.transaction-empty{padding:40px 16px}}.transaction-page{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;justify-content:center;margin:50px auto;padding:30px}.transaction-header{margin-bottom:40px;text-align:center}.transaction-header h1{color:#000;font-size:2.5em;font-weight:700;margin:0 0 10px}.transaction-header p{color:#558b2f;font-size:1.1em;margin:0}@media (max-width:900px){.transaction-page{padding:20px}.transaction-header h1{font-size:2em}}@media (max-width:600px){.transaction-page{padding:16px}.transaction-header h1{font-size:1.7em}.transaction-header p{font-size:1em}}.guest-warning{background:#fff3cd;border-left:4px solid orange;border-radius:6px;color:red;display:inline-block;font-size:30px;font-weight:700;margin-bottom:15px;padding:10px;text-align:center}.profile-page{align-items:center;display:flex;justify-content:center;padding:50px}.profile-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;max-width:100%;padding:50px 30px 30px;position:relative;text-align:center;width:700px}.profile-pic{border:5px solid #fff;border-radius:50%;display:block;height:120px;margin:-110px auto 20px;object-fit:cover;width:120px}.logout-btn{background-color:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:10px 20px}.logout-btn:hover{background-color:#d32f2f}.stats{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:15px}.stat-item{flex:1 1;min-width:120px;text-align:center}@media (max-width:768px){.profile-page{align-items:flex-start;padding:30px 16px}}.add-goal-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:Inter,Arial,sans-serif;margin:50px auto;max-width:900px;padding:30px}.add-goal-container>.message{background:#eef7ee;border-left:5px solid #4caf50;border-radius:8px;color:#2f6d2f;font-size:.95em;font-weight:500;margin-bottom:20px;padding:12px}.goals-section{margin-bottom:40px}.goals-section h2{color:#333;font-size:1.5em;margin-bottom:20px;margin-top:20px}.goals-list{display:flex;flex-direction:column;gap:20px}.goals-list.empty{background:#f8f8f8;border:1px solid #e6e6e6;border-radius:8px;color:#666;min-height:100px;padding:40px 20px;text-align:center}.goal-card{background:#fffffffb;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:20px;transition:box-shadow .2s}.goal-card:hover{box-shadow:0 4px 8px #0000001a}.goal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.goal-header h3{color:#333;font-size:1.3em;margin:0}.delete-goal-btn{align-items:center;background:#f44;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;line-height:1;transition:background .2s;width:28px}.delete-goal-btn:hover{background:#c00}.goal-description{color:#666;font-size:.95em;margin:10px 0}.goal-progress{margin:15px 0}.progress-bar-container{background:#e0e0e0;border-radius:12px;height:24px;margin-bottom:8px;overflow:hidden;width:100%}.progress-bar{background:linear-gradient(90deg,#4caf50,#45a049);border-radius:12px;height:100%;transition:width .3s ease}.progress-text{align-items:center;color:#333;display:flex;font-size:.95em;font-weight:600}.progress-percent{color:#666;font-weight:500;margin-left:5px}.goal-details{border-top:1px solid #e0e0e0;display:flex;font-size:.9em;gap:20px;margin-top:15px;padding-top:15px}.goal-detail-item{color:#666}.goal-detail-item.overdue{color:#f44}.overdue-badge{background:#f44;border-radius:4px;color:#fff;display:inline-block;font-size:.8em;font-weight:600;margin-left:8px;padding:2px 8px}.form-section{margin-top:30px}.form-section h2{color:#333;font-size:1.5em;margin-bottom:20px;margin-top:0}.guest-warning-goal{background:#fff3cd;border-left:4px solid orange;border-radius:6px;color:red;display:inline-block;font-size:30px;font-weight:700;margin:0 auto 15px;padding:10px 20px;text-align:center}.goal-form{grid-gap:22px;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;display:grid;font-family:Inter,Arial,sans-serif;gap:22px;grid-template-columns:repeat(2,1fr);margin-top:20px;padding:25px}.form-item{display:flex;flex-direction:column}.form-item label{color:#333;font-size:.95em;font-weight:600;margin-bottom:8px}.form-item input{background-color:#f8f8f8;border:1px solid #ccc;border-radius:8px;outline:none;transition:.25s ease}.form-item input,.form-item input[type=date]{font-size:1em;padding:12px 14px}.form-item input:focus{background-color:#fff;border-color:#4caf50;box-shadow:0 0 0 3px #4caf5033}.form-section{text-align:center}.full-row,.save-btn{grid-column:span 2}.save-btn{background:#4caf50;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:600;padding:12px 18px;transition:.25s}.save-btn:hover{background:#45a049;transform:translateY(-2px)}.save-btn:active{transform:translateY(0)}.message{background:#eef7ee;border-left:5px solid #4caf50;border-radius:8px;color:#2f6d2f;font-size:.95em;font-weight:500;grid-column:span 2;margin-bottom:15px;margin-top:10px;padding:12px}.update-amount-section{border-top:1px solid #e0e0e0;margin-top:15px;padding-top:15px}.update-amount-btn{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95em;font-weight:600;padding:10px 16px;transition:.25s;width:100%}.update-amount-btn:hover{background:#45a049;transform:translateY(-1px)}.update-amount-btn:active{transform:translateY(0)}.update-amount-form{display:flex;flex-direction:column;gap:12px}.update-input-group{display:flex;flex-direction:column;gap:8px}.update-input-group label{color:#333;font-size:.9em;font-weight:600}.update-amount-input{background-color:#f8f8f8;border:1px solid #ccc;border-radius:8px;font-size:1em;outline:none;padding:10px 12px;transition:.25s ease}.update-amount-input:focus{background-color:#fff;border-color:#2196f3;box-shadow:0 0 0 3px #2196f333}.update-buttons{display:flex;gap:10px}.cancel-update-btn,.save-update-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.95em;font-weight:600;padding:10px 16px;transition:.25s}.save-update-btn{background:#4caf50;color:#fff}.save-update-btn:hover{background:#45a049;transform:translateY(-1px)}.cancel-update-btn{background:#757575;color:#fff}.cancel-update-btn:hover{background:#616161;transform:translateY(-1px)}.cancel-update-btn:active,.save-update-btn:active{transform:translateY(0)}@media (max-width:768px){.add-goal-container{margin:30px 16px;padding:20px}.goal-form{grid-template-columns:1fr;padding:20px}.full-row,.message,.save-btn{grid-column:span 1}}.notfound-container{align-items:center;background:#f9f9f9;display:flex;flex-direction:column;font-family:Inter,Arial,sans-serif;height:100vh;justify-content:center;padding:0 20px;text-align:center}.notfound-title{color:#4caf50;font-size:6rem;font-weight:700;margin:0}.notfound-subtitle{color:#333;font-size:1.6rem;font-weight:600;margin:10px 0}.notfound-text{color:#666;font-size:1rem;margin-bottom:25px;max-width:400px}.notfound-button{background:#4caf50;border-radius:8px;color:#fff;display:inline-block;font-size:1rem;font-weight:700;padding:12px 24px;text-decoration:none;transition:.25s ease}.notfound-button:hover{background:#45a049;transform:translateY(-2px)}
/*# sourceMappingURL=main.05b5b102.css.map*/