*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh;padding-bottom:48px}.App,.header{background:#000}.header{border-bottom:1px solid #1a1a1a;color:#fff;margin-bottom:16px;padding:16px}.header-content{justify-content:space-between;margin:0 auto;max-width:1200px}.header-brand,.header-content{align-items:center;display:flex}.header-brand{gap:12px;text-align:left}.logo{border-radius:8px;height:120px;width:120px}.header-actions{align-items:center}.user-email{font-size:14px;opacity:.9}.logout-button{background:#0000;border:1px solid #2c2c2c;border-radius:24px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.logout-button:hover{background:#1a1a1a;border-color:#3a3a3a}.settings-button{align-items:center;background:#0000;border:1px solid #2c2c2c;border-radius:24px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.settings-button:hover{background:#1a1a1a;border-color:#3a3a3a}.header h1{font-size:28px;font-weight:700;margin-bottom:4px;text-shadow:2px 2px 4px #0003}.header p{font-size:14px;opacity:.9}.main-content{padding:0 16px}.container{margin:0 auto;max-width:1200px}.error-message{background:#1a1a1a;border:1px solid #2c2c2c;color:#ff5252;margin-bottom:16px;padding:12px}.connect-section{align-items:center;display:flex;justify-content:center;min-height:60vh}.info-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:16px;box-shadow:0 8px 24px #00000080;max-width:500px;padding:32px;text-align:center}.info-card h2{color:#fff;font-size:24px;margin-bottom:12px}.info-card p{color:#a0a0a0;font-size:14px;line-height:1.6;margin-bottom:20px}.connect-button{background:#00c805;border:none;border-radius:24px;box-shadow:none;color:#000;cursor:pointer;font-size:16px;font-weight:700;padding:12px 32px;transition:all .2s}.connect-button:hover:not(:disabled){background:#00e005}.connect-button:disabled{cursor:not-allowed;opacity:.4}.disclaimer{color:#6c6c6c;font-size:13px;margin-top:16px}.account-info{background:#000;border-radius:8px;box-shadow:none;margin-bottom:16px;padding:16px}.account-info h2{color:#fff;font-size:20px}.add-bank-button{background:#0000;border:1px solid #00c805;border-radius:24px;box-shadow:none;color:#00c805;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.add-bank-button:hover:not(:disabled){background:#00c805;color:#000}.add-bank-button:disabled{cursor:not-allowed;opacity:.4}.accounts-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.account-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:8px;padding:10px}.account-card strong{color:#fff;display:block;font-size:15px;margin-bottom:4px}.account-card p{color:#6c6c6c;font-size:13px}.account-balance{font-size:18px;font-weight:700}.grand-total{background:#000;border:1px solid #2c2c2c;border-radius:8px;color:#fff;margin-bottom:12px;padding:16px;text-align:center}.grand-total h3{color:#a0a0a0;font-size:12px;font-weight:500;margin:0 0 4px;opacity:.7}.total-amount{color:#00c805;font-size:32px;font-weight:400;margin:0}.categories-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:24px}.account-category{background:#0a0a0a;border:1px solid #1a1a1a;border-radius:12px;margin-bottom:0;padding:16px;transition:all .2s ease}.account-category:hover{border-color:#2a2a2a;box-shadow:0 4px 12px #0000004d}.category-checking-savings{border-left:4px solid #00c805}.category-investments{border-left:4px solid #4a90e2}.category-credit-cards{border-left:4px solid #ff5252}.category-retirement{border-left:4px solid orange}.category-international{border-left:4px solid #9c27b0}.category-real-estate{border-left:4px solid #795548}@media (max-width:768px){.categories-grid{grid-template-columns:1fr}}.category-title{border-bottom:2px solid #2c2c2c;color:#fff;font-size:17px;font-weight:700;letter-spacing:.3px;margin-bottom:16px;padding-bottom:10px}.category-subtotal{background:#0000;border-radius:8px;color:#00c805;font-size:16px;font-weight:700;margin-top:8px;padding:8px;text-align:right}.credit-balance,.credit-subtotal{color:#ff5252!important}.transactions-section{background:#000;border:1px solid #2c2c2c;border-radius:12px;box-shadow:none;padding:16px 12px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.section-header h2{color:#fff;font-size:20px}.header-buttons{align-items:center;display:flex;gap:12px}.refresh-button{background:#0000;border:1px solid #2c2c2c;border-radius:24px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.refresh-button:hover:not(:disabled){background:#1a1a1a;border-color:#00c805}.refresh-button:disabled{cursor:not-allowed;opacity:.5}.loading{color:#6c6c6c;padding:48px;text-align:center}.mobile-menu-toggle{background:#0000;border:1px solid #2c2c2c;border-radius:24px;color:#fff;cursor:pointer;display:none;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.mobile-menu-toggle:hover{background:#1a1a1a;border-color:#00c805}@media (max-width:768px){.header h1{font-size:32px}.info-card{padding:32px 24px}.section-header{align-items:center;flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:space-between}.mobile-menu-toggle{display:block}.header-buttons{border-top:1px solid #2c2c2c;display:none;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;width:100%}.header-buttons.mobile-expanded{display:flex}.header-buttons .refresh-button{font-size:12px;justify-content:center;margin-right:0!important;padding:10px 12px;width:100%}}@media (max-width:480px){.header-buttons .refresh-button{justify-content:center;margin-right:0!important;width:100%}}.tabs-container{margin-top:20px}.tabs{-webkit-overflow-scrolling:touch;border-bottom:1px solid #2c2c2c;display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;overflow-y:hidden;padding-bottom:0;scrollbar-color:#2c2c2c #0000;scrollbar-width:thin}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-track{background:#0000}.tabs::-webkit-scrollbar-thumb{background:#2c2c2c;border-radius:2px}.tabs::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.tab{background:#0000;border:none;border-bottom:2px solid #0000;bottom:-1px;color:#6c6c6c;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:600;padding:10px 20px;position:relative;transition:all .2s;white-space:nowrap}.tab:hover{color:#fff}.tab.active{border-bottom-color:#00c805;color:#fff}.tab-content{animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.no-data{background:#0a0a0a;border:1px solid #1a1a1a;border-radius:12px;padding:40px 24px}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:12px}.header-brand{width:100%}.header-actions{justify-content:space-between;width:100%}.user-email{font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab{font-size:12px;padding:8px 12px}.main-content{padding:0 12px}.accounts-list{grid-template-columns:1fr}.header-buttons{flex-direction:column;width:100%}.add-bank-button,.refresh-button{width:100%}}@media (max-width:480px){.App{padding-bottom:24px}.header{padding:12px}.header h1{font-size:20px}.header p{font-size:12px}.logo{height:80px;width:80px}.tab{font-size:11px;padding:8px 10px}.total-amount{font-size:24px}.main-content{padding:0 8px}.info-card{padding:24px 16px}.connect-button{font-size:14px;padding:10px 24px}}.auth-container{align-items:center;background:#000;display:flex;justify-content:center;min-height:100vh;padding:24px}.auth-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:16px;box-shadow:0 8px 24px #00000080;max-width:450px;padding:48px;width:100%}.auth-card h2{color:#fff;font-size:32px;margin-bottom:8px;text-align:center}.auth-subtitle{color:#a0a0a0;font-size:16px;margin-bottom:32px;text-align:center}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group input{font-size:16px;transition:border-color .2s}.auth-button{background:#00c805;border:none;border-radius:24px;box-shadow:none;color:#000;cursor:pointer;font-size:16px;font-weight:700;margin-top:8px;padding:14px 32px;transition:all .2s}.auth-button:hover:not(:disabled){background:#00e005}.auth-button:disabled{cursor:not-allowed;opacity:.4}.auth-switch{color:#6c6c6c;font-size:14px;margin-top:24px;text-align:center}.link-button{background:none;border:none;color:#00c805;cursor:pointer;font-size:14px;font-weight:600;padding:0}.link-button:hover{text-decoration:underline}.divider{align-items:center;color:#6c6c6c;display:flex;font-size:14px;font-weight:600;margin:24px 0}.divider:after,.divider:before{border-bottom:1px solid #2c2c2c;content:"";flex:1 1}.divider span{padding:0 16px}.google-button{align-items:center;background:#fff;border:1px solid #2c2c2c;border-radius:8px;box-shadow:0 1px 2px #0000001a;color:#3c4043;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:12px 32px;transition:all .2s;width:100%}.google-button:hover:not(:disabled){background:#f8f9fa;box-shadow:0 2px 4px #0003}.google-button:disabled{cursor:not-allowed;opacity:.4}.two-factor-section{background:#0d0d0d;border:1px solid #2c2c2c;border-radius:8px;display:flex;flex-direction:column;gap:16px;padding:20px}.two-factor-info{color:#a0a0a0;font-size:14px;margin:0;text-align:center}.error-message{background:#3d0c0c}@media (max-width:768px){.auth-card{padding:32px 24px}.auth-card h2{font-size:28px}}.table-scroll-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.search-input{max-width:280px;min-width:160px}.account-filter-select,.filter-select{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;max-width:220px;min-width:180px;padding:8px 10px;transition:all .2s}.account-filter-select:hover,.filter-select:hover{background:#2c2c2c;border-color:#3a3a3a}.account-filter-select:focus,.filter-select:focus{border-color:#00c805;outline:none}.transaction-table{border-collapse:collapse;font-size:14px;width:100%}.transaction-table thead{background:#0000;border-bottom:1px solid #2c2c2c}.transaction-table th{border-bottom:1px solid #2c2c2c;color:#6c6c6c;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 8px;text-align:left;text-transform:uppercase}.transaction-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.transaction-table th.sortable:hover{background:#1a1a1a}.transaction-table tbody tr{border-bottom:1px solid #1a1a1a;transition:background-color .2s}.transaction-table tbody tr:hover{background:#1a1a1a}.transaction-table td{color:#fff;font-size:13px;padding:3px 8px}.store-cell{font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis}.store-name{align-items:center;display:flex;gap:8px}.category-icon{font-size:20px}.description-cell{max-width:200px}.account-name-cell,.description-cell{color:#fff;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-name-cell{font-size:12px;max-width:120px}.card-number-cell{color:#6c6c6c;font-family:monospace;font-size:12px}.payment-type-cell{color:#6c6c6c;font-size:12px;text-transform:capitalize}.category-cell{color:#6c6c6c;font-size:12px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amount-cell{font-size:15px;font-weight:600;text-align:right}.amount-cell.debit{color:#fff}.amount-cell.credit{color:#00c805}.status-badge{font-size:12px;padding:4px 12px}.status-badge.pending{background:#2c2c2c;color:#ffa726}.status-badge.posted{background:#1a1a1a;border:1px solid #2c2c2c;color:#00c805}.table-footer{border-top:1px solid #2c2c2c;font-size:13px;padding:12px}.no-transactions,.table-footer{background:#0000;color:#6c6c6c;text-align:center}.no-transactions{border-radius:12px;padding:32px}@media (max-width:768px){.filters-row{align-items:stretch;flex-direction:column}.time-filters{flex-wrap:wrap;gap:6px}.time-filter-btn{font-size:12px;padding:6px 12px}.search-input{max-width:none;min-width:0;min-width:auto;width:100%}.filter-subtotal{justify-content:space-between;margin-left:0;width:100%}.table-scroll-wrapper{overflow-x:auto}.transaction-table{font-size:11px;min-width:900px;table-layout:fixed;width:auto}.transaction-table td,.transaction-table th{font-size:11px;padding:8px;white-space:nowrap}.transaction-table td:first-child,.transaction-table th:first-child{width:90px}.transaction-table td:nth-child(2),.transaction-table th:nth-child(2){width:120px}.transaction-table td:nth-child(3),.transaction-table th:nth-child(3){width:140px}.transaction-table td:nth-child(4),.transaction-table th:nth-child(4){width:110px}.transaction-table td:nth-child(5),.transaction-table th:nth-child(5){width:90px}.transaction-table td:nth-child(6),.transaction-table th:nth-child(6){width:100px}.transaction-table td:nth-child(7),.transaction-table th:nth-child(7){width:110px}.transaction-table td:nth-child(8),.transaction-table th:nth-child(8){text-align:right;width:90px}.transaction-table td:nth-child(9),.transaction-table th:nth-child(9){width:90px}}.holdings-container{background:#000;border:1px solid #2c2c2c;border-radius:12px;box-shadow:none;margin-bottom:16px;padding:16px 12px}.holdings-header{align-items:center;border-bottom:1px solid #2c2c2c;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.holdings-header h3{color:#fff;font-size:20px;margin:0}.holdings-total{color:#00c805;font-size:18px;font-weight:700}.holdings-table-wrapper{overflow-x:auto}.holdings-table{border-collapse:collapse;font-size:14px;width:100%}.holdings-table thead{background:#0000}.holdings-table th{border-bottom:1px solid #2c2c2c;color:#6c6c6c;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 8px;text-transform:uppercase}.holdings-table th:first-child,.holdings-table th:nth-child(2),.holdings-table th:nth-child(3){text-align:left}.holdings-table th:nth-child(4),.holdings-table th:nth-child(5),.holdings-table th:nth-child(6),.holdings-table th:nth-child(7),.holdings-table th:nth-child(8){text-align:right}.holdings-table th.sortable{cursor:pointer;transition:color .2s;-webkit-user-select:none;user-select:none}.holdings-table th.sortable:hover{color:#fff}.holdings-table tbody tr{border-bottom:1px solid #1a1a1a;transition:background-color .2s}.holdings-table tbody tr:hover{background-color:#1a1a1a}.holdings-table td{color:#fff;padding:3px 8px}.ticker-cell{cursor:pointer;transition:opacity .2s}.ticker-cell:hover{opacity:.7}.ticker-cell.clickable strong{text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted}.ticker-cell strong,.ticker-cell.clickable strong{color:#00c805;font-size:15px;font-weight:700}.name-cell{color:#fff;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type-cell{color:#6c6c6c;font-size:13px;text-transform:capitalize}.price-cell,.quantity-cell{color:#a0a0a0;font-family:monospace;text-align:right}.value-cell{color:#00c805}.gain-cell,.value-cell{font-family:monospace;font-weight:600;text-align:right}.gain-cell{font-size:14px}.gain-cell.positive{color:#00c805}.gain-cell.negative{color:#ff5252}.percent-gain-cell{font-family:monospace;font-size:14px;font-weight:700;text-align:right}.percent-gain-cell.positive{color:#00c805}.percent-gain-cell.negative{color:#ff5252}.no-holdings{color:#6c6c6c;padding:32px;text-align:center}@media (max-width:768px){.holdings-header{align-items:flex-start;flex-direction:column;gap:12px}.holdings-header h3{font-size:18px}.holdings-total{font-size:16px}.holdings-table{font-size:12px}.holdings-table td,.holdings-table th{font-size:11px;padding:8px 6px}.ticker-cell strong,.ticker-cell.clickable strong{font-size:13px}.name-cell{max-width:120px}.name-cell,.type-cell{font-size:11px}.gain-cell,.percent-gain-cell{font-size:12px}.holdings-table td:nth-child(3),.holdings-table td:nth-child(4),.holdings-table th:nth-child(3),.holdings-table th:nth-child(4){display:none}}@media (max-width:480px){.holdings-container{padding:12px 8px}.holdings-header h3{font-size:16px}.holdings-total{font-size:14px}.holdings-table td,.holdings-table th{font-size:10px;padding:6px 4px}.ticker-cell strong,.ticker-cell.clickable strong{font-size:12px}.name-cell{font-size:10px;max-width:80px}.gain-cell,.percent-gain-cell{font-size:11px}.holdings-table td:nth-child(5),.holdings-table th:nth-child(5){display:none}}.stock-chart-modal{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.stock-chart-container{background:#000;border-radius:12px;max-width:900px;padding:32px;position:relative;width:100%}.close-button{align-items:center;background:none;border:none;color:#a0a0a0;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;position:absolute;right:16px;top:16px;transition:color .2s;width:40px}.close-button:hover{color:#fff}.stock-header{margin-bottom:32px}.stock-info h2{color:#fff;font-size:24px;font-weight:600;margin:0 0 16px}.stock-price{color:#fff;font-size:48px;font-weight:600;margin:0 0 8px}.stock-change{font-size:18px;font-weight:500}.stock-change.positive{color:#0f8}.stock-change.negative{color:#f44}.chart-wrapper{align-items:center;display:flex;justify-content:center;margin-bottom:32px;min-height:400px}.loading{color:#a0a0a0;font-size:16px}.time-periods{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.period-button{background:none;border:none;border-radius:4px;color:#a0a0a0;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.period-button:hover{background:#1a1a1a;color:#fff}.period-button.active{background:#0f8;color:#000}@media (max-width:768px){.stock-chart-container{padding:24px 16px}.stock-price{font-size:36px}.stock-change{font-size:16px}.chart-wrapper{min-height:300px}}.financial-graphs{padding:16px}.portfolio-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.summary-card{border:1px solid #333;border-radius:8px;text-align:center}.summary-card h3{color:#a0a0a0;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.summary-value{color:#fff;font-weight:600;margin:0}.summary-value.positive{color:#0f8}.summary-value.negative{color:#f44}.summary-percent{font-size:16px;font-weight:500;margin-top:8px}.summary-percent.positive{color:#0f8}.summary-percent.negative{color:#f44}.charts-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.chart-container{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:20px}.chart-container h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 20px}.recharts-text{fill:#a0a0a0;font-size:12px}.recharts-cartesian-axis-tick-value{fill:#a0a0a0}.recharts-legend-item-text{color:#a0a0a0!important}.recharts-default-tooltip,.recharts-tooltip-wrapper{background:#2a2a2a!important;border:1px solid #444!important;border-radius:4px;padding:8px}.recharts-tooltip-label{color:#fff!important;font-weight:600;margin-bottom:4px}.recharts-tooltip-item{color:#a0a0a0!important}.no-data{color:#6c6c6c;padding:40px;text-align:center}.no-data p{font-size:16px;margin:0}.monte-carlo-section{border-top:2px solid #333;margin-top:40px;padding-top:40px}.monte-carlo-section h2{color:#fff;font-size:24px;font-weight:600;margin:0 0 12px}.monte-carlo-description{color:#a0a0a0;font-size:14px;line-height:1.6;margin:0 0 24px}.monte-carlo-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}.stat-card{background:#1a1a1a;border-radius:8px;padding:16px}.stat-card h4{color:#a0a0a0;font-size:12px;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.stat-value{color:#fff;margin:0}.stat-value.positive{color:#0f8}.stat-value.negative{color:#f44}.stat-change{font-size:14px;margin-top:4px}.stat-change.positive{color:#0f8}.stat-change.negative{color:#f44}.monte-carlo-chart{margin-top:0}@media (max-width:1200px){.charts-grid{grid-template-columns:1fr}.monte-carlo-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width:768px){.financial-graphs{padding:12px}.portfolio-summary{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.summary-card{padding:16px}.summary-card h3{font-size:12px}.summary-value{font-size:24px}.summary-percent{font-size:14px}.charts-grid{gap:16px;grid-template-columns:1fr}.chart-container{padding:16px}.chart-container h3{font-size:14px;margin-bottom:16px}.recharts-responsive-container{min-height:250px!important}.recharts-cartesian-axis-tick-value,.recharts-text{font-size:10px}.recharts-legend-item-text{font-size:11px!important}.monte-carlo-section{margin-top:32px;padding-top:32px}.monte-carlo-section h2{font-size:20px}.monte-carlo-description{font-size:13px;margin-bottom:20px}.monte-carlo-stats{gap:12px;grid-template-columns:1fr;margin-bottom:20px}.stat-card{padding:14px}.stat-card h4{font-size:11px}.stat-value{font-size:18px}.stat-change{font-size:13px}}@media (max-width:480px){.financial-graphs{padding:8px}.portfolio-summary{gap:10px;margin-bottom:16px}.summary-card{padding:12px}.summary-card h3{font-size:11px;margin-bottom:8px}.summary-value{font-size:20px}.summary-percent{font-size:12px}.charts-grid{gap:12px}.chart-container{padding:12px}.chart-container h3{font-size:13px;margin-bottom:12px}.recharts-responsive-container{min-height:220px!important}.recharts-cartesian-axis-tick-value,.recharts-text{font-size:9px}.recharts-legend-item-text{font-size:10px!important}.monte-carlo-section{margin-top:24px;padding-top:24px}.monte-carlo-section h2{font-size:18px}.monte-carlo-description{font-size:12px;margin-bottom:16px}.monte-carlo-stats{gap:10px;margin-bottom:16px}.stat-card{padding:12px}.stat-card h4{font-size:10px;margin-bottom:6px}.stat-value{font-size:16px}.stat-change{font-size:12px;margin-top:3px}.no-data p{font-size:14px}}.custom-investment-category{position:relative}.category-mortgages-leases .account-balance,.category-mortgages-leases .category-subtotal{color:#ff5252!important}.add-investment-button{background:#00c805;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;transition:all .2s}.add-investment-button:hover{background:#0f0;transform:translateY(-1px)}.no-investments{color:#6c6c6c;padding:32px 16px;text-align:center}.no-investments .hint{color:#a0a0a0;font-size:13px;margin-top:8px}.custom-subtotal{background:#00c8050d;border-radius:6px;display:flex;flex-direction:column;font-size:13px;gap:4px;padding:12px}.custom-subtotal div:first-child{color:#a0a0a0}.custom-subtotal div:last-child{color:#00c805;font-size:14px;font-weight:700}.custom-investment-modal{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@media (max-width:768px){.category-header-with-button{align-items:flex-start;flex-direction:column;gap:12px}.add-investment-button{font-size:14px;padding:10px 16px;width:100%}.custom-investment-modal{padding:16px}.modal-content{max-height:85vh;padding:20px}.modal-header h3{font-size:18px}.form-group label{font-size:13px}.form-group input,.form-group textarea{font-size:13px;padding:10px 12px}.modal-actions{flex-direction:column;gap:10px}.cancel-button,.submit-button{padding:12px 20px;width:100%}.investment-card{flex-direction:column;gap:12px}.investment-actions{justify-content:flex-end;margin-left:0}.custom-subtotal{font-size:12px;padding:10px}.custom-subtotal div:last-child{font-size:13px}.no-investments{padding:24px 12px}.no-investments .hint{font-size:12px}}@media (max-width:480px){.custom-investment-modal{padding:12px}.modal-content{padding:16px}.modal-header{margin-bottom:20px}.modal-header h3{font-size:16px}.close-modal-button{font-size:24px;height:28px;width:28px}.form-group{margin-bottom:16px}.form-group label{font-size:12px;margin-bottom:6px}.form-group input,.form-group textarea{font-size:12px;padding:9px 10px}.exchange-rate-info{font-size:11px}.converted-value{font-size:12px;padding:6px 10px}.modal-actions{gap:8px;margin-top:20px;padding-top:16px}.cancel-button,.submit-button{font-size:13px;padding:10px 16px}.add-investment-button{font-size:13px;padding:9px 14px}.icon-btn{font-size:13px;padding:3px}.custom-subtotal{font-size:11px;padding:8px}.custom-subtotal div:last-child{font-size:12px}.no-investments{font-size:14px;padding:20px 10px}.no-investments .hint{font-size:11px}}.manual-account-category{position:relative}.category-header-with-button{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.add-account-button{background:#00c805;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:13px;font-weight:600;padding:6px 12px;transition:all .2s}.add-account-button:hover{background:#0f0;transform:translateY(-1px)}.manual-account-card{align-items:center;display:flex;justify-content:space-between;min-height:60px;padding:10px 12px}.account-info{flex:1 1}.account-info strong{color:#fff;display:block;font-size:14px;margin:0}.account-info p{margin:4px 0 0}.account-balance-actions{align-items:center;display:flex;gap:12px}.account-balance{color:#00c805;font-size:16px;font-weight:600;white-space:nowrap}.account-card{align-items:center;display:flex;gap:12px;justify-content:space-between;overflow:hidden}.account-card>div:first-child{flex:1 1;min-width:0;overflow:hidden}.account-card>div:last-child{flex-shrink:0}.account-actions{display:flex;gap:4px;margin-left:8px}.icon-btn{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:14px;line-height:1;opacity:.6;padding:4px;transition:all .2s}.icon-btn:hover{opacity:1;transform:scale(1.1)}.edit-icon-btn:hover{background:#00c8051a}.delete-icon-btn:hover{background:#ff52521a}.no-accounts{color:#6c6c6c;padding:32px 16px;text-align:center}.no-accounts .hint{color:#a0a0a0;font-size:13px;margin-top:8px}.manual-subtotal{background:#00c8050d;border-radius:6px;display:flex;flex-direction:column;font-size:13px;gap:4px;padding:12px}.manual-subtotal div:first-child{color:#a0a0a0}.manual-subtotal div:last-child{color:#00c805;font-size:14px;font-weight:700}.manual-account-modal{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;padding:24px;width:100%}.modal-header{align-items:center;border-bottom:1px solid #2c2c2c;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:12px}.modal-header h3{color:#fff;font-size:20px;margin:0}.close-modal-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#a0a0a0;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.close-modal-button:hover{background:#ffffff1a;color:#fff}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;margin-bottom:8px}.exchange-rate-info{color:#00c805;font-size:12px;font-weight:400}.form-group input,.form-group textarea{background:#000;border:1px solid #2c2c2c;border-radius:6px;box-sizing:border-box;color:#fff;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#00c805;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#6c6c6c}.converted-value{background:#00c8051a;border:1px solid #00c80533;border-radius:6px;color:#00c805;font-size:13px;font-weight:600;margin-top:8px;padding:8px 12px}.modal-actions{border-top:1px solid #2c2c2c;display:flex;gap:12px;margin-top:24px;padding-top:20px}.cancel-button,.submit-button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.cancel-button{background:#0000;border:1px solid #2c2c2c;color:#a0a0a0}.cancel-button:hover{background:#ffffff0d;color:#fff}.submit-button{background:#00c805;color:#000}.submit-button:hover:not(:disabled){background:#0f0;transform:translateY(-1px)}.cancel-button:disabled,.submit-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.category-header-with-button{align-items:flex-start;flex-direction:column;gap:12px}.add-account-button{font-size:14px;padding:10px 16px;width:100%}.manual-account-modal{padding:16px}.modal-content{max-height:85vh;padding:20px}.modal-header h3{font-size:18px}.form-group label{font-size:13px}.form-group input,.form-group textarea{font-size:13px;padding:10px 12px}.modal-actions{flex-direction:column;gap:10px}.cancel-button,.submit-button{padding:12px 20px;width:100%}.manual-account-card{align-items:flex-start;flex-direction:column;gap:12px;padding:12px}.account-info{width:100%}.account-info strong{font-size:13px}.account-balance-actions{justify-content:space-between;width:100%}.account-balance{font-size:14px}.icon-btn{font-size:13px}.manual-subtotal{font-size:12px;padding:10px}.manual-subtotal div:last-child{font-size:13px}.no-accounts{padding:24px 12px}.no-accounts .hint{font-size:12px}}@media (max-width:480px){.manual-account-modal{padding:12px}.modal-content{padding:16px}.modal-header{margin-bottom:20px}.modal-header h3{font-size:16px}.close-modal-button{font-size:24px;height:28px;width:28px}.form-group{margin-bottom:16px}.form-group label{font-size:12px;margin-bottom:6px}.form-group input,.form-group textarea{font-size:12px;padding:9px 10px}.exchange-rate-info{font-size:11px}.converted-value{font-size:12px;padding:6px 10px}.modal-actions{gap:8px;margin-top:20px;padding-top:16px}.cancel-button,.submit-button{font-size:13px;padding:10px 16px}.add-account-button{font-size:13px;padding:9px 14px}.manual-account-card{padding:10px}.account-info strong{font-size:12px}.account-info p{font-size:11px}.account-balance{font-size:13px}.icon-btn{font-size:12px;padding:3px}.manual-subtotal{font-size:11px;padding:8px}.manual-subtotal div:last-child{font-size:12px}.no-accounts{font-size:14px;padding:20px 10px}.no-accounts .hint{font-size:11px}}.input-type-toggle{background:#000;border:1px solid #2c2c2c;border-radius:8px;display:flex;gap:8px;padding:4px}.toggle-btn{background:#0000;border:none;border-radius:6px;color:#6c6c6c;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:10px 16px;transition:all .2s}.toggle-btn:hover{color:#a0a0a0}.toggle-btn.active{background:#00c805;color:#000}.ticker-dropdown{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:6px;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.ticker-dropdown-item{border-bottom:1px solid #2c2c2c;cursor:pointer;padding:10px 12px;transition:background .2s}.ticker-dropdown-item:last-child{border-bottom:none}.ticker-dropdown-item:hover{background:#00c8051a}.ticker-dropdown-item strong{color:#00c805}.ticker-status{background:#ffffff0d;border-radius:6px;color:#a0a0a0}.ticker-error,.ticker-status{font-size:13px;margin-top:8px;padding:8px 12px}.ticker-error{background:#f443361a;border:1px solid #f443364d;border-radius:6px;color:#f44336}.ticker-price-info{background:#00c8051a;border:1px solid #00c80533;border-radius:6px;color:#fff;font-size:13px;margin-top:8px;padding:10px 12px}.ticker-price-info strong{color:#00c805}.ticker-badge{align-items:center;background:#00c80526;border-radius:4px;color:#00c805;display:inline-flex;font-size:11px;font-weight:600;gap:4px;margin-left:8px;padding:2px 8px}.ticker-quantity{color:#a0a0a0;font-size:12px;margin-top:2px}@media (max-width:768px){.input-type-toggle{flex-direction:column}.toggle-btn{padding:12px 16px}.ticker-dropdown{max-height:150px}}@media (max-width:480px){.toggle-btn{font-size:12px;padding:10px 12px}.ticker-price-info{font-size:12px;padding:8px 10px}.ticker-badge{font-size:10px;padding:2px 6px}}.financial-summary{color:#fff;padding:20px}.summary-header{margin-bottom:32px;text-align:center}.summary-header h2{color:#fff;font-size:28px;font-weight:700;margin-bottom:8px}.summary-subtitle{color:#a0a0a0;font-size:14px;margin:0}.section-subtitle{color:#a0a0a0;font-size:13px;margin:4px 0 20px}.metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:32px}.metric-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;padding:20px;transition:all .2s ease}.metric-card:hover{border-color:#3a3a3a;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.metric-primary{background:linear-gradient(135deg,#1a1a1a,#0a0a0a);border:2px solid #00c805}.metric-label{color:#a0a0a0;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.metric-value{color:#00c805;font-size:32px;font-weight:700;line-height:1;margin-bottom:8px}.metric-negative{color:#ff5252}.metric-positive{color:#00c805}.metric-description{color:#6c6c6c;font-size:12px;margin:0}.section-card{background:#0a0a0a;border:1px solid #1a1a1a;border-radius:12px;margin-bottom:24px;padding:24px}.section-title{color:#fff;font-size:20px;font-weight:700;margin-bottom:4px}.allocation-chart{display:flex;flex-direction:column;gap:20px}.allocation-item{display:flex;flex-direction:column;gap:8px}.allocation-header{align-items:center;display:flex;justify-content:space-between}.allocation-info{align-items:center;display:flex;gap:12px}.allocation-color{border-radius:4px;height:16px;width:16px}.allocation-name{color:#fff;font-size:15px;font-weight:600}.allocation-stats{align-items:center;display:flex;gap:16px}.allocation-percentage{color:#a0a0a0;font-size:14px;font-weight:600;min-width:50px;text-align:right}.allocation-value{color:#00c805;font-size:16px;font-weight:700;min-width:120px;text-align:right}.allocation-bar{background:#1a1a1a;border-radius:4px;height:8px;overflow:hidden;width:100%}.allocation-fill{border-radius:4px;height:100%;transition:width .3s ease}.ratios-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:32px}.ratio-card{align-items:center;background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;display:flex;gap:16px;padding:20px;transition:all .2s ease}.ratio-card:hover{border-color:#3a3a3a;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.ratio-icon{font-size:36px;line-height:1}.ratio-content{flex:1 1}.ratio-label{color:#a0a0a0;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.ratio-value{color:#00c805;font-size:28px;font-weight:700;line-height:1;margin-bottom:6px}.ratio-description{color:#6c6c6c;font-size:12px;line-height:1.4}.performance-summary{grid-gap:24px;background:#1a1a1a;border-radius:8px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:20px}.performance-stat{text-align:center}.performance-label{color:#a0a0a0;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.performance-value{color:#fff;font-size:24px;font-weight:700;line-height:1}.insights-section{background:#0a0a0a;border:1px solid #1a1a1a;border-radius:12px;padding:24px}.insights-list{display:flex;flex-direction:column;gap:16px}.insight-item{background:#1a1a1a;border-left:4px solid;border-radius:8px;display:flex;gap:16px;padding:16px}.insight-warning{background:#ffa5000d;border-left-color:orange}.insight-success{background:#00c8050d;border-left-color:#00c805}.insight-icon{flex-shrink:0;font-size:24px;line-height:1}.insight-content{flex:1 1}.insight-title{color:#fff;font-size:15px;font-weight:700;margin-bottom:6px}.insight-text{color:#a0a0a0;font-size:13px;line-height:1.5;margin:0}@media (max-width:768px){.financial-summary{padding:16px}.summary-header{margin-bottom:24px}.summary-header h2{font-size:24px}.summary-subtitle{font-size:13px}.metrics-grid{gap:12px;grid-template-columns:1fr;margin-bottom:24px}.metric-card{padding:16px}.metric-label{font-size:11px}.metric-value{font-size:26px}.metric-description{font-size:11px}.section-card{margin-bottom:20px;padding:20px}.section-title{font-size:18px}.section-subtitle{font-size:12px;margin:4px 0 16px}.allocation-chart{gap:16px}.allocation-name{font-size:14px}.allocation-percentage{font-size:13px;min-width:45px}.allocation-value{font-size:14px;min-width:100px}.ratios-grid{gap:12px;grid-template-columns:1fr;margin-bottom:24px}.ratio-card{padding:16px}.ratio-icon{font-size:32px}.ratio-label{font-size:11px}.ratio-value{font-size:24px}.ratio-description{font-size:11px}.performance-summary{gap:16px;grid-template-columns:repeat(2,1fr);padding:16px}.performance-label{font-size:11px}.performance-value{font-size:20px}.insights-section{padding:20px}.insights-list{gap:12px}.insight-item{gap:12px;padding:14px}.insight-icon{font-size:20px}.insight-title{font-size:14px}.insight-text{font-size:12px}}@media (max-width:480px){.financial-summary{padding:12px}.summary-header{margin-bottom:20px}.summary-header h2{font-size:20px}.summary-subtitle{font-size:12px}.metrics-grid{gap:10px;margin-bottom:20px}.metric-card{padding:14px}.metric-label{font-size:10px;margin-bottom:6px}.metric-value{font-size:22px}.metric-description{font-size:10px}.section-card{margin-bottom:16px;padding:16px}.section-title{font-size:16px}.section-subtitle{font-size:11px;margin:4px 0 14px}.allocation-chart{gap:14px}.allocation-header{align-items:flex-start;flex-direction:column;gap:8px}.allocation-info{gap:10px}.allocation-color{height:14px;width:14px}.allocation-name{font-size:13px}.allocation-stats{flex-direction:row;gap:12px;justify-content:space-between;width:100%}.allocation-percentage{font-size:12px;min-width:auto;text-align:left}.allocation-value{font-size:13px;min-width:auto;text-align:right}.allocation-bar{height:6px}.ratios-grid{gap:10px;margin-bottom:20px}.ratio-card{gap:12px;padding:14px}.ratio-icon{font-size:28px}.ratio-label{font-size:10px;margin-bottom:4px}.ratio-value{font-size:20px;margin-bottom:4px}.ratio-description{font-size:10px}.performance-summary{gap:14px;grid-template-columns:1fr;padding:14px}.performance-label{font-size:10px;margin-bottom:6px}.performance-value{font-size:18px}.insights-section{padding:16px}.insights-list{gap:10px}.insight-item{gap:10px;padding:12px}.insight-icon{font-size:18px}.insight-title{font-size:13px;margin-bottom:4px}.insight-text{font-size:11px}}.transaction-analysis{color:#fff;padding:20px}.duplicate-alert{background:#ffa5000d;border:1px solid orange!important}.duplicate-list{display:flex;flex-direction:column;gap:16px;margin-top:16px}.duplicate-group{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:8px;padding:16px}.duplicate-header{align-items:center;border-bottom:1px solid #2c2c2c;color:#fff;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.duplicate-count{background:orange;border-radius:12px;color:#000;font-size:12px;font-weight:700;padding:4px 12px}.duplicate-item{align-items:center;background:#0a0a0a;border-left:3px solid orange;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.duplicate-item:last-child{margin-bottom:0}.txn-name{color:#fff;font-size:14px;font-weight:600;margin-bottom:4px}.txn-details{color:#6c6c6c;font-size:12px}.txn-amount{color:#ff5252;font-size:16px;font-weight:700}.more-duplicates{background:#0a0a0a;border-radius:8px;color:#a0a0a0;font-size:14px;margin-top:8px;padding:12px;text-align:center}.account-breakdown-list{display:flex;flex-direction:column;gap:20px}.account-breakdown-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;padding:20px;transition:all .2s ease}.account-breakdown-card:hover{border-color:#3a3a3a;box-shadow:0 4px 12px #0000004d}.account-breakdown-header{align-items:center;border-bottom:1px solid #2c2c2c;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.account-info h4{color:#fff;font-size:18px;font-weight:700;margin:0 0 6px}.account-type{background:#2c2c2c;border-radius:12px;color:#a0a0a0;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.account-transactions{color:#6c6c6c;font-size:13px;font-weight:500}.account-breakdown-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px}.stat-item{background:#0a0a0a;border-radius:8px;padding:12px;text-align:center}.stat-label{color:#a0a0a0;font-size:12px;font-weight:600}.stat-value{font-size:20px;font-weight:700;line-height:1}.stat-value.positive{color:#00c805}.stat-value.negative{color:#ff5252}.account-breakdown-bars{display:flex;flex-direction:column;gap:12px}.bar-row{align-items:center;display:flex;gap:12px}.bar-label{color:#a0a0a0;font-size:13px;font-weight:600;min-width:80px}.bar-container{background:#0a0a0a;border-radius:12px;flex:1 1;height:24px;overflow:hidden;position:relative}.bar-fill{border-radius:12px;height:100%;transition:width .3s ease}.income-bar{background:linear-gradient(90deg,#00c805,#00e005)}.spending-bar{background:linear-gradient(90deg,#ff5252,#ff7070)}.bar-percentage{color:#fff;font-size:13px;font-weight:700;min-width:45px;text-align:right}@media (max-width:768px){.transaction-analysis{padding:16px}.duplicate-list{gap:12px;margin-top:12px}.duplicate-group{padding:14px}.duplicate-header{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:10px;padding-bottom:10px}.duplicate-count{font-size:11px;padding:3px 10px}.duplicate-item{align-items:flex-start;flex-direction:column;gap:8px;padding:10px}.txn-name{font-size:13px}.txn-details{font-size:11px}.txn-amount{align-self:flex-end;font-size:14px}.more-duplicates{font-size:13px;padding:10px}.account-breakdown-list{gap:16px}.account-breakdown-card{padding:16px}.account-breakdown-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:16px;padding-bottom:12px}.account-info h4{font-size:16px}.account-type{font-size:10px;padding:3px 8px}.account-transactions{font-size:12px}.account-breakdown-stats{gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.stat-item{padding:10px}.stat-label{font-size:11px;margin-bottom:6px}.stat-value{font-size:18px}.account-breakdown-bars,.bar-row{gap:10px}.bar-label{font-size:12px;min-width:70px}.bar-container{height:20px}.bar-percentage{font-size:12px;min-width:40px}}@media (max-width:480px){.transaction-analysis{padding:12px}.duplicate-list{gap:10px;margin-top:10px}.duplicate-group{padding:12px}.duplicate-header{gap:8px;margin-bottom:8px;padding-bottom:8px}.duplicate-count{font-size:10px;padding:2px 8px}.duplicate-item{gap:6px;padding:8px}.txn-name{font-size:12px}.txn-details{font-size:10px}.txn-amount{font-size:13px}.more-duplicates{font-size:12px;padding:8px}.account-breakdown-list{gap:12px}.account-breakdown-card{padding:14px}.account-breakdown-header{gap:10px;margin-bottom:14px;padding-bottom:10px}.account-info h4{font-size:15px;margin-bottom:4px}.account-type{font-size:9px;padding:3px 7px}.account-transactions{font-size:11px}.account-breakdown-stats{gap:10px;grid-template-columns:1fr;margin-bottom:14px}.stat-item{padding:8px}.stat-label{font-size:10px;margin-bottom:6px}.stat-value{font-size:16px}.account-breakdown-bars,.bar-row{gap:8px}.bar-label{font-size:11px;min-width:60px}.bar-container{height:18px}.bar-percentage{font-size:11px;min-width:35px}}.two-factor-container{margin:0;max-width:500px;padding:0}.two-factor-card{background:#0000;border-radius:0;box-shadow:none;padding:20px}.two-factor-card h2{color:#fff;font-size:24px;font-weight:600;margin:0 0 10px;text-align:center}.two-factor-subtitle{color:#a0a0a0;font-size:14px;margin:0 0 30px;text-align:center}.error-message{background-color:#3d0c0c;border:1px solid #5c1414;color:#ff6b6b}.error-message,.success-message{font-size:14px;margin-bottom:20px;padding:12px 16px}.success-message{background-color:#0d2818;border:1px solid #1a3d25;border-radius:8px;color:#00c805}.status-view{gap:24px}.status-info,.status-view{display:flex;flex-direction:column}.status-info{background:#0d0d0d;border:1px solid #2c2c2c;border-radius:8px;gap:12px;padding:20px}.status-row{align-items:center;display:flex;justify-content:space-between}.status-label{color:#a0a0a0;font-size:14px;font-weight:500}.status-value{color:#fff;font-size:14px}.status-badge{border-radius:20px;font-size:13px;font-weight:500;padding:6px 12px}.status-badge.enabled{background:#0d2818;border:1px solid #1a3d25;color:#00c805}.status-badge.disabled{background:#3d0c0c;border:1px solid #5c1414;color:#ff6b6b}.action-section{display:flex;flex-direction:column;gap:16px}.info-text{color:#a0a0a0;font-size:14px;line-height:1.6;margin:0}.two-factor-form{gap:20px}.form-group,.two-factor-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#fff;font-size:14px;font-weight:500}.form-group input{background:#000;border:1px solid #2c2c2c;border-radius:8px;color:#fff;font-size:14px;padding:12px 16px;transition:all .2s}.form-group input:focus{border-color:#00c805;box-shadow:none;outline:none}.form-group input:disabled{background-color:#0a0a0a;cursor:not-allowed;opacity:.5}.form-hint{color:#6c6c6c;font-size:12px;margin-top:4px}.button-group{display:flex;gap:12px;margin-top:10px}.primary-button{background:#00c805;border:none;border-radius:24px;color:#000;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.primary-button:hover:not(:disabled){background:#00e005}.primary-button:active:not(:disabled){transform:scale(.98)}.primary-button:disabled{background:#2c2c2c;color:#6c6c6c;cursor:not-allowed;opacity:.5}.secondary-button{background:#0000;border:1px solid #2c2c2c;border-radius:24px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s}.secondary-button:hover:not(:disabled){background:#1a1a1a;border-color:#3a3a3a}.secondary-button:disabled{cursor:not-allowed;opacity:.5}.danger-button{background:#0000;border:1px solid #ff5252;border-radius:24px;color:#ff5252;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.danger-button:hover:not(:disabled){background:#ff5252;color:#000}.danger-button:active:not(:disabled){transform:scale(.98)}.danger-button:disabled{cursor:not-allowed;opacity:.4}@media (max-width:600px){.two-factor-container{margin:0;padding:0}.two-factor-card{padding:16px}.button-group{flex-direction:column}.button-group button{width:100%}}.historical-trends{margin:0 auto;max-width:1400px;padding:20px}.trends-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.header-left h2{color:#fff;font-size:28px;margin:0}.subtitle{color:#888;font-size:14px;margin:5px 0 0}.header-controls{align-items:center;display:flex;gap:10px}.date-range-selector{background-color:#2a2a2a;border:1px solid #444;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;outline:none;padding:8px 12px}.date-range-selector:hover{background-color:#333;border-color:#666}.history-capture-button,.history-refresh-button{background-color:#4caf50;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.history-capture-button:hover:not(:disabled){background-color:#45a049}.history-refresh-button{background-color:#2196f3}.history-refresh-button:hover:not(:disabled){background-color:#1976d2}.history-capture-button:disabled,.history-refresh-button:disabled{cursor:not-allowed;opacity:.6}.history-capture-button.primary{font-size:16px;padding:12px 24px}.chart-section{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;margin-bottom:25px;padding:20px}.chart-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px}.chart-section h3{color:#fff;font-size:20px;font-weight:500;margin:0}.cache-indicator-legend{align-items:center;background-color:#ffc1071a;border:1px solid #ffc1074d;border-radius:4px;display:flex;gap:8px;padding:6px 12px}.yellow-dot{background-color:#ffc107;border:2px solid #ff9800;border-radius:50%;height:12px;width:12px}.legend-text{color:#ffc107;font-size:13px;font-weight:500}.loading-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.spinner{animation:spin 1s linear infinite;border:4px solid #333;border-radius:50%;border-top-color:#4caf50;height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}.loading-spinner p{color:#888;font-size:16px;margin-top:20px}.error-message{background-color:#2a1a1a;border:1px solid #f44336;border-radius:8px;color:#f44336;padding:30px;text-align:center}.error-message p{font-size:16px;margin:0 0 20px}.retry-button{background-color:#f44336;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.retry-button:hover{background-color:#d32f2f}.empty-state{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;margin-top:20px;padding:60px 20px;text-align:center}.empty-state h2{color:#fff;font-size:24px;margin:0 0 15px}.empty-state p{color:#888;font-size:16px;line-height:1.6;margin:10px 0}.empty-state .hint{font-size:14px;margin:20px auto 0;max-width:600px}.summary-stats{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;margin-top:25px;padding:20px}.summary-stats h3{color:#fff;font-size:20px;font-weight:500;margin:0 0 20px}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{background-color:#222;border:1px solid #333;border-radius:6px;padding:15px}.stat-label{color:#888;font-size:13px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.stat-value{font-size:24px;font-weight:600}.stat-value,.stat-value.positive{color:#4caf50}.stat-value.negative{color:#f44336}@media (max-width:768px){.historical-trends{padding:15px}.trends-header{align-items:stretch;flex-direction:column}.header-left{text-align:center}.header-controls{flex-direction:column;width:100%}.date-range-selector,.history-capture-button,.history-refresh-button{width:100%}.chart-section{padding:15px}.stats-grid{grid-template-columns:1fr}}.recharts-wrapper{font-family:inherit}.recharts-legend-wrapper{margin-top:15px!important}.recharts-legend-item-text{color:#888!important;font-size:13px!important}.recharts-tooltip-wrapper{outline:none}.amazon-orders{margin:0 auto;max-width:1600px;padding:20px}.amazon-loading{color:#6c6c6c;font-size:18px;padding:60px 20px;text-align:center}.amazon-header{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.header-content h2{color:#fff;font-size:28px;margin:0 0 8px}.header-subtitle{color:#6c6c6c;font-size:14px;margin:0}.header-actions{display:flex;gap:12px}.btn-delete-all,.btn-export,.btn-recategorize,.btn-upload{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s}.btn-upload{align-items:center;background:#00c805;color:#000;display:inline-flex;justify-content:center}.btn-upload:hover{background:#00dd06}.btn-export{background:#2c2c2c;border:1px solid #3a3a3a;color:#fff}.btn-export:hover:not(:disabled){background:#3a3a3a}.btn-export:disabled{cursor:not-allowed;opacity:.5}.btn-recategorize{background:#ffc107;color:#000}.btn-recategorize:hover:not(:disabled){background:#ffd54f}.btn-recategorize:disabled{cursor:not-allowed;opacity:.5}.btn-delete-all{background:#f44;color:#fff}.btn-delete-all:hover:not(:disabled){background:#f55}.btn-delete-all:disabled{cursor:not-allowed;opacity:.5}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.summary-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;padding:20px}.summary-label{color:#6c6c6c;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.summary-value{color:#00c805;font-family:monospace;font-size:28px;font-weight:700;margin-bottom:12px}.summary-detail{color:#6c6c6c;font-size:13px;margin-top:4px}.table-container{background:#000;border:1px solid #2c2c2c;border-radius:12px;box-shadow:none;margin-bottom:16px;padding:16px 12px}.filters-row{align-items:center;border-bottom:1px solid #2c2c2c;display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:16px;padding-bottom:12px}.time-filters{display:flex;gap:6px}.time-filter-btn{background:#0000;border:1px solid #2c2c2c;border-radius:6px;color:#6c6c6c;cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.3px;min-width:38px;padding:8px 9px;text-transform:uppercase;transition:all .2s}.time-filter-btn:hover{background:#2c2c2c;color:#fff}.time-filter-btn.active{background:#00c805;border-color:#00c805;color:#000}.search-input{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:6px;color:#fff;flex:1 1;font-size:13px;font-weight:400;max-width:320px;min-width:180px;padding:8px 12px;transition:all .2s}.search-input::placeholder{color:#6c6c6c}.search-input:hover{background:#2c2c2c;border-color:#3a3a3a}.search-input:focus{background:#2c2c2c;border-color:#00c805;outline:none}.category-filter-select,.website-filter-select{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;max-width:200px;min-width:160px;padding:8px 10px;transition:all .2s}.category-filter-select:hover,.website-filter-select:hover{background:#2c2c2c;border-color:#3a3a3a}.category-filter-select:focus,.website-filter-select:focus{border-color:#00c805;outline:none}.filter-subtotal{align-items:center;background:#1a1a1a;border:1px solid #2c2c2c;border-radius:6px;display:flex;gap:8px;margin-left:auto;padding:8px 12px}.subtotal-label{color:#6c6c6c;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.subtotal-amount{color:#00c805;font-family:monospace;font-size:16px;font-weight:700}.orders-table{border-collapse:collapse;font-size:14px;width:100%}.orders-table thead{background:#0000;border-bottom:1px solid #2c2c2c}.orders-table th{border-bottom:1px solid #2c2c2c;color:#6c6c6c;font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 8px;text-align:left;text-transform:uppercase}.orders-table th.sortable{cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.orders-table th.sortable:hover{background:#1a1a1a;color:#00c805}.orders-table tbody tr{border-bottom:1px solid #1a1a1a;transition:background-color .2s}.orders-table tbody tr:hover{background:#1a1a1a}.orders-table td{color:#fff;font-size:13px;padding:12px 8px}.date-cell{color:#6c6c6c;font-size:12px;white-space:nowrap}.product-cell{max-width:400px}.product-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#fff;display:-webkit-box;font-weight:500;line-height:1.4;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis}.product-asin{color:#6c6c6c;font-family:monospace;font-size:11px}.category-cell{max-width:180px}.category-main{color:#00c805;font-size:12px;font-weight:500;margin-bottom:2px}.category-sub{color:#6c6c6c;font-size:11px;font-style:italic}.qty-cell{color:#6c6c6c;font-weight:600;text-align:center}.price-cell,.total-cell{font-family:monospace;font-weight:600;text-align:right}.price-cell{color:#6c6c6c;font-size:12px}.total-cell{color:#00c805;font-size:14px}.original-currency{color:#6c6c6c;font-size:10px;font-weight:400;margin-top:2px;opacity:.8}.status-cell{text-align:center}.status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.status-badge.shipped{background:#00c8051a;border:1px solid #00c80533;color:#00c805}.status-badge.pending{background:#ffc1071a;border:1px solid #ffc10733;color:#ffc107}.status-badge.cancelled,.status-badge.refunded{background:#f443361a;border:1px solid #f4433633;color:#f44336}.website-cell{color:#6c6c6c;font-size:12px}.orderid-cell{color:#6c6c6c;font-family:monospace;font-size:11px}.no-orders{color:#6c6c6c;padding:60px 20px;text-align:center}.no-orders p{font-size:15px;margin:10px 0}.help-text{color:#6c6c6c;font-size:13px;font-style:italic;margin-top:15px}@media (max-width:1200px){.orders-table{font-size:13px}.orders-table td,.orders-table th{padding:10px 6px}.product-cell{max-width:300px}}@media (max-width:768px){.amazon-header{align-items:stretch;flex-direction:column}.header-actions{width:100%}.btn-delete-all,.btn-export,.btn-upload{flex:1 1;font-size:12px;padding:8px 12px}.filters-row{align-items:stretch;flex-direction:column}.time-filters{flex-wrap:wrap;gap:6px}.search-input,.website-filter-select{max-width:none;min-width:0;min-width:auto;width:100%}.filter-subtotal{justify-content:space-between;margin-left:0;width:100%}.orders-table{font-size:12px}.orders-table td,.orders-table th{padding:8px 4px}.orderid-cell,.website-cell{display:none}.product-cell{max-width:200px}.summary-cards{grid-template-columns:1fr}}@media (max-width:480px){.header-content h2{font-size:24px}.product-name{-webkit-line-clamp:1}.price-cell,.qty-cell{display:none}}.system-status{background:#000;margin:0 auto;max-width:1400px;min-height:100vh;padding:30px}.status-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.status-header h2{color:#fff;font-size:28px;margin:0}.refresh-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background .2s}.refresh-btn:hover{background:#2563eb}.overall-health{align-items:center;background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;color:#fff;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px;transition:all .2s ease}.overall-health:hover{border-color:#3a3a3a;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.health-indicator{align-items:center;display:flex;gap:16px}.health-icon{font-size:42px}.health-text{display:flex;flex-direction:column;gap:4px}.health-label{color:#a0a0a0;font-size:13px;font-weight:500}.health-status{font-size:24px;font-weight:700;letter-spacing:.5px}.last-updated{color:#a0a0a0;font-size:13px;text-align:right}.last-snapshot-card{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;box-shadow:0 1px 3px #0000004d;margin-bottom:30px;padding:25px}.last-snapshot-card h3{color:#fff;font-size:20px;margin:0 0 20px}.snapshot-details{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.snapshot-item{display:flex;flex-direction:column;gap:5px}.snapshot-label{color:#9ca3af;font-size:14px;font-weight:500}.snapshot-value{color:#fff;font-size:18px;font-weight:600}.sources-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.source-card{background:#1a1a1a;border:1px solid #2c2c2c;border-left:4px solid #3a3a3a;border-radius:12px;box-shadow:0 1px 3px #0000004d;padding:25px;transition:transform .2s,box-shadow .2s}.source-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.source-card.healthy{border-left-color:#10b981}.source-card.error{border-left-color:#ef4444}.source-card.stale{border-left-color:#f59e0b}.source-card.not_connected{border-left-color:#9ca3af;opacity:.7}.source-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.source-title{align-items:center;display:flex;gap:10px}.source-icon{font-size:24px}.source-title h3{color:#fff;font-size:20px;margin:0}.source-accounts{background:#2c2c2c;border-radius:12px;color:#9ca3af;font-size:14px;font-weight:500;padding:4px 12px}.source-description{color:#9ca3af;font-size:14px;line-height:1.5;margin-bottom:15px}.source-details{display:flex;flex-direction:column;gap:10px}.source-detail-item{align-items:center;display:flex;font-size:14px;justify-content:space-between}.detail-label{color:#9ca3af;font-weight:500}.detail-value{color:#fff;font-weight:600}.detail-value.status-healthy{color:#10b981}.detail-value.status-error{color:#ef4444}.detail-value.status-stale{color:#f59e0b}.source-not-connected{color:#9ca3af;font-style:italic;padding:10px;text-align:center}.status-help{background:#1a1a1a;border:1px solid #2c2c2c;border-radius:12px;box-shadow:0 1px 3px #0000004d;padding:25px}.status-help h3{color:#fff;font-size:18px;margin:0 0 15px}.status-help ul{list-style:none;margin:0;padding-left:20px}.status-help li{color:#9ca3af;font-size:14px;line-height:1.5;margin-bottom:10px}.status-help li strong{color:#fff}.system-status-error,.system-status-loading{background:#000;color:#9ca3af;font-size:18px;min-height:100vh;padding:50px;text-align:center}.system-status-error{color:#ef4444}@media (max-width:768px){.system-status{padding:20px}.status-header{gap:15px}.overall-health,.status-header{align-items:flex-start;flex-direction:column}.overall-health{gap:16px;padding:20px}.health-icon{font-size:36px}.health-status{font-size:20px}.last-updated{align-self:flex-start;text-align:left}.snapshot-details,.sources-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.1e66f9b4.css.map*/