*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0d1117;--bg-secondary:#161b22;--bg-tertiary:#21262d;--border:#30363d;--text-primary:#c9d1d9;--text-secondary:#8b949e;--text-muted:#6e7681;--accent:#58a6ff;--accent-hover:#1f6feb;--success:#3fb950;--warning:#d29922;--danger:#f85149;--info:#79c0ff;--font-mono:"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0d1117;background-color:var(--bg-primary);color:#c9d1d9;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif;font-family:var(--font-sans);font-size:14px;line-height:1.5}code,pre{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-family:var(--font-mono)}#root{min-height:100vh}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#161b22;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#30363d;background:var(--border);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#6e7681;background:var(--text-muted)}.text-muted{color:#8b949e;color:var(--text-secondary)}.text-success{color:#3fb950;color:var(--success)}.text-warning{color:#d29922;color:var(--warning)}.text-danger{color:#f85149;color:var(--danger)}.text-mono{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-family:var(--font-mono)}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin .8s linear infinite;border:2px solid #30363d;border-top-color:#58a6ff;border:2px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:20px;width:20px}.loading-screen{align-items:center;flex-direction:column;gap:1rem;justify-content:center}.app,.loading-screen{display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:240px;max-width:100%;overflow-x:hidden;padding:2rem}.page-header{border-bottom:1px solid var(--border);margin-bottom:2rem;padding-bottom:1rem}.page-header h1{font-size:24px;font-weight:600;margin-bottom:.5rem}.page-header p{color:var(--text-secondary);font-size:14px}.card{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;margin-bottom:1.5rem;padding:1.5rem}.card-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.card-title{font-size:16px;font-weight:600}.card-body{font-size:14px}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.btn{align-items:center;background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.btn:hover{background-color:var(--border)}.btn-primary{background-color:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover)}.btn-sm{font-size:13px;padding:.375rem .75rem}.btn-danger{background-color:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{opacity:.9}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-size:14px;font-weight:500;margin-bottom:.5rem}.form-input,.form-select,.form-textarea{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:14px;padding:.5rem .75rem;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);outline:none}.form-textarea{font-family:var(--font-mono);min-height:100px;resize:vertical}.form-help{color:var(--text-secondary);font-size:12px;margin-top:.375rem}.table-container{border:1px solid var(--border);border-radius:6px;overflow-x:auto}.table{border-collapse:collapse;font-size:13px;width:100%}.table td,.table th{border-bottom:1px solid var(--border);padding:.75rem;text-align:left}.table th{background-color:var(--bg-tertiary);font-weight:600;position:-webkit-sticky;position:sticky;top:0;z-index:10}.table tr:last-child td{border-bottom:none}.table tr:hover{background-color:var(--bg-tertiary)}.table-mono{font-family:var(--font-mono)}.stat-card{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:1.25rem}.stat-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.stat-value{font-family:var(--font-mono);font-size:24px;font-weight:600}.stat-change{font-size:12px;margin-top:.5rem}.badge{font-size:11px;font-weight:600;letter-spacing:.3px;padding:.25rem .5rem}.badge-success{background-color:#3fb95026;color:var(--success)}.badge-warning{background-color:#d2992226;color:var(--warning)}.badge-danger{background-color:#f8514926;color:var(--danger)}.badge-info{background-color:#58a6ff26;color:var(--info)}.progress{background-color:var(--bg-tertiary);border-radius:4px;height:8px;margin:.5rem 0;overflow:hidden}.progress-bar{height:100%;transition:width .3s ease}.progress-bar-success{background-color:var(--success)}.progress-bar-warning{background-color:var(--warning)}.progress-bar-danger{background-color:var(--danger)}.alert{border:1px solid;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.alert-info{background-color:#58a6ff1a;border-color:var(--info);color:var(--info)}.alert-warning{background-color:#d299221a;border-color:var(--warning);color:var(--warning)}.alert-danger{background-color:#f851491a;border-color:var(--danger);color:var(--danger)}.alert-success{background-color:#3fb9501a;border-color:var(--success);color:var(--success)}@media (max-width:768px){.main-content{margin-left:0;padding:1rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.connection-status{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.connection-status .status-dot{animation:pulse 2s ease-in-out infinite;font-size:10px}.connection-status.connected{background-color:#22c55e26;border:1px solid #22c55e4d;color:#22c55e}.connection-status.connected:hover{background-color:#22c55e40}.connection-status.connected .status-dot{color:#22c55e}.connection-status.disconnected{align-items:flex-start;background-color:#ef444426;border:1px solid #ef44444d;color:#ef4444;cursor:default;flex-direction:column}.connection-status.disconnected .status-dot{color:#ef4444}.connection-status.checking{background-color:#fbbf2426;border:1px solid #fbbf244d;color:#fbbf24}.connection-status.checking .status-dot{color:#fbbf24}.retry-button{background-color:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-left:8px;padding:4px 12px;transition:background-color .2s ease}.retry-button:hover{background-color:#dc2626}.connection-help{background-color:#0000004d;border-radius:4px;font-size:12px;line-height:1.5;margin-top:12px;padding:12px}.connection-help p{color:#e5e7eb;margin:4px 0}.connection-help code{background-color:#0006;border-radius:3px;color:#fbbf24;display:inline-block;font-family:Courier New,monospace;margin:4px 0;padding:4px 8px}.connection-help .help-text{color:#9ca3af;font-size:11px;margin-top:8px}.connection-details{background-color:#000000e6;border:1px solid #22c55e4d;border-radius:6px;box-shadow:0 4px 6px #0000004d;left:0;margin-top:8px;padding:12px;position:absolute;right:0;top:100%;z-index:1000}.detail-item{color:#e5e7eb;font-size:12px;padding:6px 0}.detail-item strong{color:#22c55e;margin-right:8px}.privacy-note{border-top:1px solid #22c55e33;color:#22c55e;font-size:11px;margin-top:8px;padding-top:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.connection-status{font-size:12px;padding:6px 12px}.connection-details{left:16px;position:fixed;right:16px;top:auto}}.sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:240px;z-index:100}.sidebar-header-link{color:inherit;cursor:pointer;text-decoration:none}.sidebar-header-link:hover .sidebar-title{color:var(--accent-hover)}.sidebar-header{border-bottom:1px solid var(--border);padding:2rem 1.5rem;transition:all .2s}.sidebar-title{color:var(--accent);font-family:var(--font-mono);font-size:20px;font-weight:700;margin-bottom:.25rem}.sidebar-subtitle{color:var(--text-secondary);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.sidebar-status{border-bottom:1px solid var(--border);padding:1rem 1.5rem}.sidebar-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.sidebar-link{align-items:center;border-left:3px solid #0000;color:var(--text-secondary);display:flex;gap:.75rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.sidebar-link:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.sidebar-link.active{background-color:var(--bg-tertiary);border-left-color:var(--accent);color:var(--accent)}.sidebar-icon{align-items:center;display:flex;font-size:18px;justify-content:center;width:24px}.sidebar-label{font-size:14px;font-weight:500}@media (max-width:768px){.sidebar{width:60px}.sidebar-header{padding:1rem}.sidebar-title{font-size:16px}.sidebar-subtitle{display:none}.sidebar-status{padding:.75rem .5rem}.sidebar-link{justify-content:center;padding:.75rem 1rem}.sidebar-label{display:none}}.setup{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:2rem}.setup-container{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;max-width:600px;padding:2rem;width:100%}.setup-header{margin-bottom:2rem;text-align:center}.setup-header h1{font-size:28px;margin-bottom:.5rem}.setup-header p{color:var(--text-secondary)}.setup-progress{margin-bottom:3rem;padding:0 2rem}.progress-step,.setup-progress{align-items:center;display:flex;justify-content:center}.progress-step{background-color:var(--bg-tertiary);border:2px solid var(--border);border-radius:50%;color:var(--text-secondary);font-weight:600;height:40px;transition:all .3s;width:40px}.progress-step.active{background-color:var(--accent);border-color:var(--accent);color:#fff}.progress-line{background-color:var(--border);flex:1 1;height:2px;margin:0 .5rem}.setup-body{margin-bottom:2rem;min-height:250px}.setup-step h2{font-size:20px;margin-bottom:.75rem}.step-description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.config-summary{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:6px;margin:1.5rem 0;padding:1.5rem}.config-item{margin-bottom:1rem}.config-item:last-child{margin-bottom:0}.config-item strong{color:var(--text-secondary);display:block;font-size:12px;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.config-item code{background-color:var(--bg-tertiary);border-radius:4px;color:var(--accent);display:block;font-family:var(--font-mono);font-size:13px;padding:.5rem}.setup-footer{border-top:1px solid var(--border);display:flex;gap:1rem;padding-top:1.5rem}.dashboard{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.balance-tree{font-size:13px}.balance-row{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:.5rem 0;transition:background-color .2s}.balance-row:hover{background-color:var(--bg-tertiary)}.balance-row:last-child{border-bottom:none}.balance-level-0{font-size:14px;font-weight:600}.balance-level-1{font-weight:500}.balance-level-2{color:var(--text-secondary)}.account-name{flex:1 1}.account-name:hover{text-decoration:underline}.account-balance{font-family:var(--font-mono);font-weight:600;text-align:right}.account-balance.positive{color:var(--success)}.account-balance.negative{color:var(--danger)}.balance-type-liability .account-balance.negative{color:var(--success)}.currency{color:var(--text-muted);font-size:11px;margin-left:.25rem}.upcoming-list{display:flex;flex-direction:column;gap:.75rem}.upcoming-item{align-items:center;background-color:var(--bg-primary);border-left:1px solid var(--border);border:1px solid var(--border);border-left-width:3px;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem;transition:all .2s}.upcoming-item:hover{background-color:var(--bg-tertiary)}.upcoming-item.overdue{background-color:#f851490d;border-left-color:var(--danger)}.upcoming-item.urgent{background-color:#d299220d;border-left-color:var(--warning)}.upcoming-item.soon{border-left-color:var(--info)}.upcoming-info{flex:1 1}.upcoming-payee{font-weight:500;margin-bottom:.25rem}.upcoming-account{font-size:12px}.upcoming-details{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.upcoming-amount{font-family:var(--font-mono);font-size:14px;font-weight:600}.upcoming-days{font-size:10px}.empty-state{color:var(--text-secondary);padding:2rem;text-align:center}.empty-state p{margin-bottom:1rem}.text-right{text-align:right}.transactions-page{animation:fadeIn .3s ease-in}.filter-grid{grid-template-columns:2fr 2fr 3fr 1fr}.filter-grid .form-group{margin-bottom:0}.transactions-list{display:flex;flex-direction:column;gap:1px}.transaction-card{background:#161b22;border:1px solid #30363d;border-radius:6px;overflow:hidden;transition:all .2s ease}.transaction-card.expanded,.transaction-card:hover{border-color:#58a6ff}.transaction-header{background:#0d1117;transition:background-color .2s ease}.transaction-header:hover{background:#161b22}.transaction-details{border-top:1px solid #21262d}.badge{border-radius:3px;display:inline-block;font-size:10px;font-weight:500;padding:2px 6px;text-transform:uppercase}.badge-asset{background-color:#1f6feb20;color:#58a6ff}.badge-liability{background-color:#da363620;color:#f85149}.badge-income{background-color:#23883320;color:#3fb950}.badge-expense{background-color:#d2992220;color:#d29922}.badge-equity{background-color:#bc8cff20;color:#bc8cff}.badge-other{background-color:#6e768120;color:#8b949e}@media (max-width:1400px){.filter-grid{grid-template-columns:2fr 2fr}}@media (max-width:768px){.filter-grid{grid-template-columns:1fr}.transaction-header{flex-wrap:wrap}}.charts-page{animation:fadeIn .3s ease-in}.chart-container{min-height:300px;padding:1rem 0}.recharts-wrapper{font-family:var(--font-sans);font-size:12px}.recharts-legend-wrapper{padding-top:1rem!important}.budget-page{animation:fadeIn .3s ease-in}.budget-list{display:flex;flex-direction:column;gap:1.5rem}.budget-item{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:6px;padding:1.25rem}.budget-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.budget-account{font-size:14px;font-weight:600}.budget-amounts{align-items:baseline;display:flex;font-size:13px;gap:.5rem;margin-bottom:.75rem}.budget-actual{font-family:var(--font-mono);font-weight:600}.budget-remaining{font-family:var(--font-mono);font-size:12px;margin-top:.5rem}.upcoming-page{animation:fadeIn .3s ease-in}.transaction-wizard{background-color:var(--bg-primary);border:1px solid var(--border);border-radius:6px;margin-bottom:2rem;padding:1.5rem}.wizard-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.upcoming-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.upcoming-card{background-color:var(--bg-primary);border-left:1px solid var(--border);border:1px solid var(--border);border-left-width:3px;border-radius:6px;overflow:hidden;transition:all .2s}.upcoming-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #0000004d}.upcoming-card.overdue{border-left-color:var(--danger)}.upcoming-card.urgent{border-left-color:var(--warning)}.upcoming-card.soon{border-left-color:var(--info)}.upcoming-card-header{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1.25rem}.upcoming-card-title{font-size:16px;font-weight:600;margin-bottom:.25rem}.upcoming-card-meta{color:var(--text-secondary);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.upcoming-card-body{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem}.upcoming-detail{align-items:center;display:flex;font-size:13px;gap:.75rem}.detail-label{color:var(--text-secondary);font-weight:600;min-width:80px}.modal-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #00000080;max-height:90vh;max-width:700px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{font-size:18px;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.modal-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.modal-body,.modal-footer{padding:1.5rem}.modal-footer{border-top:1px solid var(--border);display:flex;gap:.75rem;justify-content:flex-end}@media (max-width:768px){.upcoming-list,.wizard-grid{grid-template-columns:1fr}.modal-content{max-height:95vh;width:95%}}.forecast-page{padding:2rem}.forecast-chart{align-items:center;background:var(--bg-secondary);border-radius:8px;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:2rem;text-align:center}.chart-placeholder{color:var(--text-muted);font-size:1.1rem;margin-bottom:1rem}.chart-info{color:var(--text-muted);font-size:.9rem}.forecast-table-container{overflow-x:auto}.forecast-table{border-collapse:collapse;width:100%}.forecast-table td,.forecast-table th{border-bottom:1px solid var(--border-color);padding:.75rem;text-align:left}.forecast-table th{color:var(--text-muted);font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.forecast-table td.amount{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;text-align:right}.forecast-table td.income{color:#10b981;color:var(--success-color,#10b981)}.forecast-table td.expense{color:#ef4444;color:var(--danger-color,#ef4444)}.forecast-table td.positive{color:#10b981;color:var(--success-color,#10b981);font-weight:600}.forecast-table td.negative{color:#ef4444;color:var(--danger-color,#ef4444);font-weight:600}.forecast-table tbody tr:hover{background-color:var(--bg-secondary)}.no-data{color:var(--text-muted);padding:3rem;text-align:center}.filter-grid{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width:768px){.forecast-page{padding:1rem}.filter-grid{grid-template-columns:1fr}.forecast-table{font-size:.875rem}.forecast-table td,.forecast-table th{padding:.5rem}}.cli-page{display:flex;flex-direction:column;height:calc(100vh - 4rem)}.cli-container{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.cli-terminal{flex:1 1;font-family:var(--font-mono);font-size:13px;line-height:1.6;min-height:0;overflow-y:auto;padding:1.5rem}.cli-entry{margin-bottom:1rem}.cli-prompt{display:flex;gap:.5rem;margin-bottom:.5rem}.cli-prompt-symbol{color:var(--accent);font-weight:600}.cli-prompt-text{color:var(--text-primary)}.cli-error,.cli-output,.cli-system{word-wrap:break-word;border-radius:4px;font-family:var(--font-mono);font-size:13px;line-height:1.5;margin:0;padding:.75rem;white-space:pre-wrap}.cli-output{background-color:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary)}.cli-error{background-color:#f851491a;border:1px solid var(--danger);color:var(--danger)}.cli-system{background-color:#58a6ff1a;border:1px solid var(--info);color:var(--info)}.cli-loading{align-items:center;color:var(--text-secondary);display:flex;font-family:var(--font-mono);font-size:13px;gap:.75rem}.cli-input-form{background-color:var(--bg-tertiary);border-top:1px solid var(--border);padding:1rem 1.5rem}.cli-input-container{align-items:center;background-color:var(--bg-primary);border:1px solid var(--border);border-radius:6px;display:flex;gap:.5rem;padding:.5rem .75rem}.cli-input-container:focus-within{border-color:var(--accent)}.cli-input-prompt{color:var(--accent);font-family:var(--font-mono);font-weight:600;white-space:nowrap}.cli-input{background:none;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-mono);font-size:14px;outline:none}.cli-input::placeholder{color:var(--text-muted)}.cli-input:disabled{cursor:not-allowed;opacity:.5}.cli-help-bar{background-color:var(--bg-primary);border-top:1px solid var(--border);color:var(--text-muted);display:flex;font-family:var(--font-mono);font-size:11px;gap:2rem;padding:.75rem 1.5rem}.cli-help-bar span{white-space:nowrap}@media (max-width:768px){.cli-help-bar{flex-wrap:wrap;gap:.5rem}}.settings-page{animation:fadeIn .3s ease-in;max-width:800px}.settings-actions{display:flex;gap:1rem;margin:2rem 0}.config-display{display:flex;flex-direction:column;gap:1rem}.config-row{align-items:flex-start;display:flex;gap:1rem}.config-key{color:var(--text-secondary);font-size:13px;font-weight:600;min-width:120px}.config-value{background-color:var(--bg-tertiary);border-radius:4px;color:var(--accent);flex:1 1;font-family:var(--font-mono);font-size:12px;padding:.5rem;word-break:break-all}
/*# sourceMappingURL=main.16d8cd43.css.map*/