*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f5f5f5;color:#333}#app{min-height:100vh}.navbar{background-color:#fdbc0f;color:#fff;padding:1rem 0;box-shadow:0 2px 4px #0000001a}.nav-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.75rem;font-size:1.2rem;font-weight:600}.logo-img{height:100px;width:auto}.nav-links{display:flex;list-style:none;gap:2rem}.nav-links a{color:#fff;text-decoration:none;transition:opacity .2s}.nav-links a:hover{opacity:.8}.nav-links a.router-link-active{border-bottom:2px solid white;padding-bottom:.25rem}.logout-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.logout-button:hover{background:#ffffff4d}.main-content{max-width:1200px;margin:2rem auto;padding:0 2rem}@media (max-width: 768px){.nav-container{flex-direction:column;gap:1rem}.nav-links{gap:1rem}.main-content{padding:0 1rem}}.dashboard[data-v-f71e1a1d]{padding:2rem 0}.dashboard-header[data-v-f71e1a1d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.dashboard-header h2[data-v-f71e1a1d]{font-size:2rem;color:#2c3e50}.filters[data-v-f71e1a1d]{display:flex;gap:1rem}.filters select[data-v-f71e1a1d]{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;background:#fff;cursor:pointer}.loading[data-v-f71e1a1d],.error[data-v-f71e1a1d]{text-align:center;padding:2rem;font-size:1.2rem}.error[data-v-f71e1a1d]{color:#e74c3c}.stats-grid[data-v-f71e1a1d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.category-table-container[data-v-f71e1a1d]{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem}.category-table-container h3[data-v-f71e1a1d]{margin-bottom:1rem;color:#2c3e50;font-size:1.2rem}.category-table[data-v-f71e1a1d]{width:100%;border-collapse:collapse}.category-table thead[data-v-f71e1a1d]{background-color:#f8f9fa}.category-table th[data-v-f71e1a1d]{padding:.75rem;text-align:left;font-weight:600;color:#2c3e50;border-bottom:2px solid #dee2e6}.category-table td[data-v-f71e1a1d]{padding:.75rem;border-bottom:1px solid #dee2e6}.category-table tbody tr[data-v-f71e1a1d]:hover{background-color:#f8f9fa}.category-table .category-badge[data-v-f71e1a1d]{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;color:#fff}.category-table .amount[data-v-f71e1a1d]{font-weight:600}.category-table .above-average[data-v-f71e1a1d]{color:#e74c3c}.category-table .below-average[data-v-f71e1a1d]{color:#27ae60}.stat-card[data-v-f71e1a1d]{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;border-left:4px solid transparent}.stat-card.income[data-v-f71e1a1d]{border-left-color:#27ae60}.stat-card.expense[data-v-f71e1a1d]{border-left-color:#e74c3c}.stat-card.savings-positive[data-v-f71e1a1d]{border-left-color:#27ae60}.stat-card.savings-negative[data-v-f71e1a1d]{border-left-color:#e74c3c}.stat-card h3[data-v-f71e1a1d]{font-size:.9rem;color:#7f8c8d;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.stat-value[data-v-f71e1a1d]{font-size:2rem;font-weight:600;color:#2c3e50}.stat-value.positive[data-v-f71e1a1d]{color:#27ae60}.stat-value.negative[data-v-f71e1a1d]{color:#e74c3c}.charts-grid[data-v-f71e1a1d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.chart-container[data-v-f71e1a1d]{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;min-height:350px;position:relative}.chart-container h3[data-v-f71e1a1d]{margin-bottom:1rem;color:#2c3e50;font-size:1.2rem}.chart-container canvas[data-v-f71e1a1d]{width:100%!important;height:300px!important;max-height:300px}.chart-container.full-width[data-v-f71e1a1d]{grid-column:1 / -1;margin-top:2rem}@media (max-width: 768px){.charts-grid[data-v-f71e1a1d]{grid-template-columns:1fr}.dashboard-header[data-v-f71e1a1d]{flex-direction:column;align-items:flex-start}}.upload[data-v-06530ea7]{padding:2rem 0}.upload h2[data-v-06530ea7]{font-size:2rem;color:#2c3e50;margin-bottom:2rem}.upload-container[data-v-06530ea7]{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.upload-card[data-v-06530ea7]{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.upload-form[data-v-06530ea7]{display:flex;flex-direction:column;gap:1.5rem}.file-input-wrapper[data-v-06530ea7]{position:relative}.file-input[data-v-06530ea7]{position:absolute;opacity:0;width:0;height:0}.file-label[data-v-06530ea7]{display:block;padding:1.5rem;border:2px dashed #3498db;border-radius:8px;text-align:center;cursor:pointer;transition:all .3s;background:#f8f9fa;color:#3498db;font-weight:500}.file-label[data-v-06530ea7]:hover{background:#e3f2fd;border-color:#2980b9}.upload-button[data-v-06530ea7]{padding:1rem 2rem;background:#3498db;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .3s}.upload-button[data-v-06530ea7]:hover:not(:disabled){background:#2980b9}.upload-button[data-v-06530ea7]:disabled{background:#bdc3c7;cursor:not-allowed}.message[data-v-06530ea7]{margin-top:1rem;padding:1rem;border-radius:4px}.message.success[data-v-06530ea7]{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error[data-v-06530ea7]{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.upload-result[data-v-06530ea7]{margin-top:1.5rem;padding:1rem;background:#e8f5e9;border-radius:4px;border:1px solid #c8e6c9}.upload-result h3[data-v-06530ea7]{margin-bottom:.5rem;color:#2c3e50}.upload-result p[data-v-06530ea7]{margin:.5rem 0;color:#2c3e50}.upload-result .hint[data-v-06530ea7]{margin-top:1rem;font-size:.9rem;color:#7f8c8d}.upload-result a[data-v-06530ea7]{color:#3498db;text-decoration:none;font-weight:600}.upload-result a[data-v-06530ea7]:hover{text-decoration:underline}.info-card[data-v-06530ea7]{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.info-card h3[data-v-06530ea7]{color:#2c3e50;margin-top:1.5rem;margin-bottom:.5rem;font-size:1.1rem}.info-card h3[data-v-06530ea7]:first-child{margin-top:0}.info-card ul[data-v-06530ea7]{list-style:none;padding-left:0;margin-bottom:1rem}.info-card li[data-v-06530ea7]{color:#555;padding:.5rem 0 .5rem 1.5rem;position:relative}.info-card li[data-v-06530ea7]:before{content:"•";position:absolute;left:0;color:#3498db;font-weight:700}.info-card .note[data-v-06530ea7]{margin-top:1.5rem;padding:1rem;background:#fff3cd;border-left:4px solid #ffc107;color:#856404;font-size:.9rem;border-radius:4px}@media (max-width: 768px){.upload-container[data-v-06530ea7]{grid-template-columns:1fr}}.review[data-v-a24f4b53]{padding:2rem 0}.review-header[data-v-a24f4b53]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.review-header h2[data-v-a24f4b53]{font-size:2rem;color:#2c3e50}.refresh-button[data-v-a24f4b53]{padding:.75rem 1.5rem;background:#3498db;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .3s}.refresh-button[data-v-a24f4b53]:hover:not(:disabled){background:#2980b9}.refresh-button[data-v-a24f4b53]:disabled{background:#bdc3c7;cursor:not-allowed}.loading[data-v-a24f4b53],.error[data-v-a24f4b53],.empty-state[data-v-a24f4b53]{text-align:center;padding:3rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.error[data-v-a24f4b53]{color:#e74c3c}.empty-state p[data-v-a24f4b53]{margin:.5rem 0;color:#7f8c8d}.empty-state .hint[data-v-a24f4b53]{font-size:.9rem}.empty-state a[data-v-a24f4b53]{color:#3498db;text-decoration:none;font-weight:600}.empty-state a[data-v-a24f4b53]:hover{text-decoration:underline}.transactions-table-wrapper[data-v-a24f4b53]{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto;width:100%}.bulk-actions-bar[data-v-a24f4b53]{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-bottom:2px solid #dee2e6;border-radius:8px 8px 0 0}.selected-count[data-v-a24f4b53]{font-weight:600;color:#2c3e50}.bulk-buttons[data-v-a24f4b53]{display:flex;gap:.5rem}.bulk-button[data-v-a24f4b53]{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .3s}.bulk-confirm[data-v-a24f4b53]{background:#27ae60;color:#fff}.bulk-confirm[data-v-a24f4b53]:hover:not(:disabled){background:#229954}.bulk-unconfirm[data-v-a24f4b53]{background:#3498db;color:#fff}.bulk-unconfirm[data-v-a24f4b53]:hover:not(:disabled){background:#2980b9}.bulk-delete[data-v-a24f4b53]{background:#e74c3c;color:#fff}.bulk-delete[data-v-a24f4b53]:hover:not(:disabled){background:#c0392b}.bulk-button[data-v-a24f4b53]:disabled{opacity:.6;cursor:not-allowed}.transactions-table[data-v-a24f4b53]{width:100%;border-collapse:collapse;table-layout:auto}.transactions-table thead[data-v-a24f4b53]{background:#f8f9fa}.transactions-table th[data-v-a24f4b53]{padding:1rem;text-align:left;font-weight:600;color:#2c3e50;border-bottom:2px solid #dee2e6}.transactions-table td[data-v-a24f4b53]{padding:1rem;border-bottom:1px solid #dee2e6}.transaction-row[data-v-a24f4b53]:hover{background:#f8f9fa}.transaction-row.selected[data-v-a24f4b53]{background:#e3f2fd}.checkbox-header[data-v-a24f4b53],.checkbox-cell[data-v-a24f4b53]{width:40px;text-align:center;padding:.5rem}.select-all-checkbox[data-v-a24f4b53],.transaction-checkbox[data-v-a24f4b53]{cursor:pointer;width:18px;height:18px}.description-cell[data-v-a24f4b53]{max-width:none;width:auto;min-width:300px}.description[data-v-a24f4b53]{max-width:100%;word-wrap:break-word;white-space:normal;line-height:1.5;max-height:150px;overflow-y:auto;padding:.5rem}.category-raw-cell[data-v-a24f4b53]{max-width:150px;font-size:.9rem}.field-value[data-v-a24f4b53]{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-empty[data-v-a24f4b53]{color:#95a5a6;font-style:italic}.amount[data-v-a24f4b53]{font-weight:600;color:#2c3e50}.amount.positive[data-v-a24f4b53]{color:#27ae60}.amount.negative[data-v-a24f4b53]{color:#e74c3c}.transaction-row.confirmed[data-v-a24f4b53]{opacity:.7;background-color:#f8f9fa}.transaction-row.confirmed[data-v-a24f4b53]:hover{background-color:#e9ecef}.category-select[data-v-a24f4b53]:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.category-select[data-v-a24f4b53]{padding:.5rem;border:2px solid #ddd;border-radius:4px;font-size:.9rem;cursor:pointer;min-width:150px;background:#fff}.category-select[data-v-a24f4b53]:focus{outline:none;border-color:#3498db}.macro-badge[data-v-a24f4b53]{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500;border:1px solid}.macro-badge.empty[data-v-a24f4b53]{color:#95a5a6;border-color:#ddd;background:#f8f9fa}.confirm-button[data-v-a24f4b53]{padding:.5rem 1rem;background:#27ae60;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .3s}.confirm-button[data-v-a24f4b53]:hover:not(:disabled){background:#229954}.confirm-button[data-v-a24f4b53]:disabled{background:#bdc3c7;cursor:not-allowed}.actions-cell[data-v-a24f4b53]{min-width:250px}.action-buttons[data-v-a24f4b53]{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.unconfirm-button[data-v-a24f4b53],.delete-button[data-v-a24f4b53]{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;cursor:pointer;transition:background .3s}.unconfirm-button[data-v-a24f4b53]{background:#3498db;color:#fff}.unconfirm-button[data-v-a24f4b53]:hover:not(:disabled){background:#2980b9}.delete-button[data-v-a24f4b53]{background:#e74c3c;color:#fff}.delete-button[data-v-a24f4b53]:hover:not(:disabled){background:#c0392b}.unconfirm-button[data-v-a24f4b53]:disabled,.delete-button[data-v-a24f4b53]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.transactions-table[data-v-a24f4b53]{font-size:.9rem}.transactions-table th[data-v-a24f4b53],.transactions-table td[data-v-a24f4b53]{padding:.5rem}.description-cell[data-v-a24f4b53]{min-width:200px}.category-raw-cell[data-v-a24f4b53]{max-width:100px}}.transactions[data-v-2cc05cc1]{padding:2rem 0}.transactions-header[data-v-2cc05cc1]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.transactions-header h2[data-v-2cc05cc1]{font-size:2rem;color:#2c3e50}.filters[data-v-2cc05cc1]{display:flex;gap:1rem}.filters select[data-v-2cc05cc1]{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;background:#fff;cursor:pointer}.loading[data-v-2cc05cc1],.error[data-v-2cc05cc1],.empty[data-v-2cc05cc1]{text-align:center;padding:2rem;font-size:1.2rem}.error[data-v-2cc05cc1]{color:#e74c3c}.empty[data-v-2cc05cc1]{color:#7f8c8d}.transactions-content[data-v-2cc05cc1]{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto;width:100%}.bulk-actions-bar[data-v-2cc05cc1]{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-bottom:2px solid #dee2e6;border-radius:8px 8px 0 0}.selected-count[data-v-2cc05cc1]{font-weight:600;color:#2c3e50}.bulk-buttons[data-v-2cc05cc1]{display:flex;gap:.5rem}.bulk-button[data-v-2cc05cc1]{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .3s}.bulk-unconfirm[data-v-2cc05cc1]{background:#3498db;color:#fff}.bulk-unconfirm[data-v-2cc05cc1]:hover:not(:disabled){background:#2980b9}.bulk-delete[data-v-2cc05cc1]{background:#e74c3c;color:#fff}.bulk-delete[data-v-2cc05cc1]:hover:not(:disabled){background:#c0392b}.bulk-button[data-v-2cc05cc1]:disabled{opacity:.6;cursor:not-allowed}.transactions-table[data-v-2cc05cc1]{width:100%;border-collapse:collapse;table-layout:auto}.transactions-table thead[data-v-2cc05cc1]{background-color:#f8f9fa}.transactions-table th[data-v-2cc05cc1]{padding:1rem;text-align:left;font-weight:600;color:#2c3e50;border-bottom:2px solid #dee2e6}.transactions-table td[data-v-2cc05cc1]{padding:1rem;border-bottom:1px solid #dee2e6}.transactions-table tbody tr[data-v-2cc05cc1]:hover{background-color:#f8f9fa}.transactions-table tbody tr.selected[data-v-2cc05cc1]{background-color:#e3f2fd}.checkbox-header[data-v-2cc05cc1],.checkbox-cell[data-v-2cc05cc1]{width:40px;text-align:center;padding:.5rem}.select-all-checkbox[data-v-2cc05cc1],.transaction-checkbox[data-v-2cc05cc1]{cursor:pointer;width:18px;height:18px}.description-cell[data-v-2cc05cc1]{max-width:none;width:auto;min-width:300px}.description[data-v-2cc05cc1]{max-width:100%;word-wrap:break-word;white-space:normal;line-height:1.5;max-height:150px;overflow-y:auto;padding:.5rem}.category-raw-cell[data-v-2cc05cc1]{max-width:150px;font-size:.9rem}.field-value[data-v-2cc05cc1]{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-empty[data-v-2cc05cc1]{color:#95a5a6;font-style:italic}.category-badge[data-v-2cc05cc1]{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;color:#fff}.category-badge.uncategorized[data-v-2cc05cc1]{background-color:#95a5a6}.amount[data-v-2cc05cc1]{font-weight:600;font-size:1.1rem}.amount.positive[data-v-2cc05cc1]{color:#27ae60}.amount.negative[data-v-2cc05cc1]{color:#e74c3c}.actions[data-v-2cc05cc1]{display:flex;gap:.5rem}.unconfirm-button[data-v-2cc05cc1],.delete-button[data-v-2cc05cc1]{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;cursor:pointer;transition:all .2s}.unconfirm-button[data-v-2cc05cc1]{background-color:#3498db;color:#fff}.unconfirm-button[data-v-2cc05cc1]:hover:not(:disabled){background-color:#2980b9}.delete-button[data-v-2cc05cc1]{background-color:#e74c3c;color:#fff}.delete-button[data-v-2cc05cc1]:hover:not(:disabled){background-color:#c0392b}.unconfirm-button[data-v-2cc05cc1]:disabled,.delete-button[data-v-2cc05cc1]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.transactions-header[data-v-2cc05cc1]{flex-direction:column;align-items:flex-start}.transactions-table[data-v-2cc05cc1]{font-size:.875rem}.transactions-table th[data-v-2cc05cc1],.transactions-table td[data-v-2cc05cc1]{padding:.5rem}.description-cell[data-v-2cc05cc1]{min-width:200px}.category-raw-cell[data-v-2cc05cc1]{max-width:100px}.actions[data-v-2cc05cc1]{flex-direction:column}.expanded-details[data-v-2cc05cc1]{grid-template-columns:1fr}}.login-container[data-v-927e9200]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fdbc0f,#f8e0a1);padding:2rem}.login-card[data-v-927e9200]{background:#fff;border-radius:12px;box-shadow:0 10px 40px #fdbc0f33;padding:3rem;width:100%;max-width:400px;border-top:4px solid #fdbc0f}.login-card h2[data-v-927e9200]{text-align:center;color:#fdbc0f;margin-bottom:.5rem;font-size:2rem;font-weight:700}.subtitle[data-v-927e9200]{text-align:center;color:#7f8c8d;margin-bottom:2rem;font-size:.9rem}.login-form[data-v-927e9200]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-927e9200]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-927e9200]{font-weight:600;color:#2c3e50;font-size:.9rem}.form-group input[data-v-927e9200]{padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:border-color .3s}.form-group input[data-v-927e9200]:focus{outline:none;border-color:#fdbc0f;box-shadow:0 0 0 3px #fdbc0f1a}.error-message[data-v-927e9200]{background-color:#fee;color:#c33;padding:.75rem;border-radius:6px;font-size:.9rem;text-align:center}.login-button[data-v-927e9200]{padding:.75rem;background:#fdbc0f;color:#2c3e50;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:.5rem;box-shadow:0 2px 8px #fdbc0f4d}.login-button[data-v-927e9200]:hover:not(:disabled){background:#e6a90d;box-shadow:0 4px 12px #fdbc0f66;transform:translateY(-1px)}.login-button[data-v-927e9200]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 480px){.login-card[data-v-927e9200]{padding:2rem 1.5rem}}
