.analytics-dashboard{display:flex;flex-direction:column;gap:28px}.analytics-section{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 12px #0000000f;border:1px solid var(--color-grey-900)}.analytics-section-title{font-size:18px;font-weight:600;color:var(--color-text-900);margin:0 0 20px}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.metric-card{background:var(--color-neutral-white);color:var(--color-text-900);padding:28px;border-radius:16px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--color-grey-900);transition:box-shadow .2s ease;min-height:130px;flex:1}.metric-card:hover{box-shadow:0 2px 8px #00000014}.metric-title{font-size:13px;color:var(--color-text-700);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.metric-value{font-size:32px;font-weight:700;line-height:1.1;color:var(--color-text-900)}.metric-trend{font-size:12px;font-weight:500;padding:4px 8px;border-radius:4px;display:inline-block;width:fit-content;background:var(--color-grey-600);color:var(--color-text-700)}.metric-trend.positive,.metric-trend.negative{background:var(--color-grey-600);color:var(--color-text-700)}.period-comparison{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.period-card{background:var(--color-neutral-white);border:1px solid var(--color-grey-900);border-radius:8px;padding:16px;transition:box-shadow .2s ease}.period-card:hover{box-shadow:0 2px 8px #00000014}.period-title{font-size:13px;font-weight:600;color:var(--color-text-900);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.period-metrics{display:flex;flex-direction:column;gap:.5rem}.period-metric{display:flex;justify-content:space-between;align-items:center}.period-metric .label{font-size:14px;color:var(--color-text-700)}.period-metric .value{font-size:14px;font-weight:600}.period-metric .value.positive,.period-metric .value.negative{color:var(--color-text-900)}.chart-container{padding:1rem 0}.trend-chart{display:flex;align-items:flex-end;justify-content:space-around;height:200px;gap:.5rem;padding:1rem 0}.trend-month{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.trend-bars{display:flex;gap:4px;align-items:flex-end;height:180px;width:100%;justify-content:center}.trend-bar{width:16px;border-radius:4px 4px 0 0;transition:opacity .2s;cursor:pointer;min-height:4px}.trend-bar:hover{opacity:.8}.trend-bar.income{background:var(--color-success-500)}.trend-bar.expense{background:var(--color-danger-500)}.trend-label{font-size:12px;color:var(--color-text-700);text-align:center}.trend-legend{display:flex;justify-content:center;gap:24px;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-grey-900)}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text-700)}.legend-color{width:12px;height:12px;border-radius:2px}.legend-color.income{background:var(--color-success-500)}.legend-color.expense{background:var(--color-danger-500)}.analytics-two-column{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.category-list{display:flex;flex-direction:column;gap:1rem}.category-item{display:flex;flex-direction:column;gap:.5rem}.category-info{display:flex;justify-content:space-between;align-items:center}.category-name{font-weight:600;color:var(--color-text-900)}.category-amount{font-weight:600;color:var(--color-danger-500)}.category-bar{height:6px;background:var(--color-grey-900);border-radius:3px;overflow:hidden}.category-bar-fill{height:100%;background:var(--color-information-500);border-radius:3px;transition:width .3s ease}.category-meta{font-size:12px;color:var(--color-text-700)}.vendor-list{display:flex;flex-direction:column;gap:.75rem}.vendor-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--color-grey-600);border-radius:8px;border:1px solid var(--color-grey-900)}.vendor-rank{font-weight:700;color:var(--color-information-500);font-size:14px;min-width:32px}.vendor-info{flex:1;display:flex;flex-direction:column;gap:4px}.vendor-name{font-weight:600;color:var(--color-text-900);font-size:14px}.vendor-meta{font-size:12px;color:var(--color-text-700);display:flex;align-items:center;gap:8px}.vendor-category{display:inline-block;padding:2px 8px;background:var(--color-information-100);color:var(--color-information-500);border-radius:4px;font-size:11px;font-weight:600}.vendor-count{font-size:12px;color:var(--color-text-700)}.vendor-amount{font-weight:600;color:var(--color-danger-500)}.cash-flow-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cash-flow-stat{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--color-grey-600);border-radius:8px;border:1px solid var(--color-grey-900)}.cash-flow-stat .label{font-size:14px;color:var(--color-text-700);font-weight:500}.cash-flow-stat .value{font-size:24px;font-weight:700;color:var(--color-text-900)}.empty-state{text-align:center;padding:64px 32px;color:var(--color-text-700)}.empty-state p{font-size:16px;margin:0}body.dark-mode .analytics-section{background:var(--color-neutral-white);border-color:var(--color-grey-900);box-shadow:0 2px 12px #0000004d}body.dark-mode .analytics-section-title{color:var(--color-text-900)}body.dark-mode .period-card{background:var(--color-grey-700);border-color:var(--color-grey-900)}body.dark-mode .period-title{color:var(--color-text-800)}body.dark-mode .period-metric .label,body.dark-mode .trend-label{color:var(--color-text-700)}body.dark-mode .trend-legend{border-color:var(--color-grey-900)}body.dark-mode .legend-item{color:var(--color-text-700)}body.dark-mode .category-name{color:var(--color-text-900)}body.dark-mode .category-bar{background:var(--color-grey-800)}body.dark-mode .vendor-item{background:var(--color-grey-700);border-color:var(--color-grey-900)}body.dark-mode .vendor-name{color:var(--color-text-900)}body.dark-mode .vendor-meta{color:var(--color-text-700)}body.dark-mode .vendor-category{background:var(--color-information-100);color:var(--color-information-500)}body.dark-mode .vendor-count{color:var(--color-text-700)}body.dark-mode .cash-flow-stat{background:var(--color-grey-700);border-color:var(--color-grey-900)}body.dark-mode .cash-flow-stat .label{color:var(--color-text-700)}body.dark-mode .cash-flow-stat .value{color:var(--color-text-900)}body.dark-mode .empty-state{color:var(--color-text-700)}@media(max-width:1024px){.metrics-grid,.period-comparison,.cash-flow-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.metrics-grid,.period-comparison,.analytics-two-column{grid-template-columns:1fr}.trend-chart{height:150px}.trend-bars{height:130px}.metric-value{font-size:24px}.cash-flow-summary{grid-template-columns:1fr}}.metric-note{font-size:10px;font-weight:400;color:var(--color-text-500);opacity:.8;margin-left:4px}.enhanced-analytics{max-width:1400px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:36px}.quick-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:12px}.stat-card{background:var(--color-neutral-white);border-radius:14px;padding:28px;display:flex;align-items:center;gap:18px;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s;border:1px solid rgba(0,0,0,.05)}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.stat-card.positive{background:linear-gradient(135deg,var(--color-success-100) 0%,var(--color-neutral-white) 100%);border-left:4px solid var(--color-success-600)}.stat-card.negative{background:linear-gradient(135deg,var(--color-danger-100) 0%,var(--color-neutral-white) 100%);border-left:4px solid var(--color-danger-600)}.stat-icon{font-size:2.5rem;line-height:1}.stat-content{flex:1}.stat-label{font-size:.875rem;color:var(--color-neutral-500);font-weight:500;margin-bottom:4px}.stat-value{font-size:1.75rem;font-weight:700;color:var(--color-neutral-900);margin-bottom:4px}.stat-trend{font-size:.875rem;font-weight:600;display:inline-flex;align-items:center;gap:4px}.stat-trend.up{color:var(--color-success-600)}.stat-trend.down{color:var(--color-danger-600)}.insights-section{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 8px #00000014}.section-title{font-size:1.25rem;font-weight:700;color:var(--color-neutral-900);margin-bottom:24px;display:flex;align-items:center;gap:10px}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.insight-card{background:var(--color-neutral-50);border-radius:10px;padding:18px;display:flex;gap:14px;border-left:3px solid var(--color-neutral-300);transition:all .2s}.insight-card:hover{background:var(--color-neutral-100);transform:translate(4px)}.insight-card.success{border-left-color:var(--color-success-600);background:var(--color-success-100)}.insight-card.warning{border-left-color:var(--color-warning-600);background:var(--color-warning-100)}.insight-card.alert{border-left-color:var(--color-danger-600);background:var(--color-danger-100)}.insight-card.info{border-left-color:var(--color-information-600);background:var(--color-information-100)}.insight-icon{font-size:1.5rem;line-height:1}.insight-content{flex:1}.insight-title{font-weight:600;color:var(--color-neutral-900);margin-bottom:4px}.insight-message{font-size:.875rem;color:var(--color-neutral-500)}.detailed-metrics{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 8px #00000014}.metrics-table{display:flex;flex-direction:column;gap:1px;background:var(--color-neutral-200);border-radius:10px;overflow:hidden}.table-header{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr 1fr;background:var(--color-neutral-50);font-weight:600;color:var(--color-neutral-700);font-size:.875rem}.table-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr 1fr;background:var(--color-neutral-white);transition:background .2s}.table-row:hover{background:var(--color-neutral-50)}.table-cell{padding:14px 18px;display:flex;align-items:center}.table-cell.positive{color:var(--color-success-600);font-weight:500}.table-cell.negative{color:var(--color-danger-600);font-weight:500}.visualization-section{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 8px #00000014}.interactive-chart{padding:24px 0}.chart-main{display:flex;align-items:flex-end;justify-content:space-around;gap:12px;height:280px;padding:20px 10px;border-bottom:2px solid var(--color-neutral-200)}.chart-column{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:50px;max-width:100px;height:100%}.column-bars{display:flex;gap:4px;align-items:flex-end;justify-content:center;width:100%;height:100%;flex:1;min-height:0}.bar-income,.bar-expense{flex:0 0 auto;width:45%;max-width:28px;min-width:12px;border-radius:4px 4px 0 0;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.bar-income{background:linear-gradient(to top,var(--color-success-600),var(--color-success-400))}.bar-expense{background:linear-gradient(to top,var(--color-danger-600),var(--color-danger-400))}.bar-income:hover,.bar-expense:hover{opacity:.8;transform:scaleY(1.02)}.bar-label{position:absolute;top:-24px;left:50%;transform:translate(-50%);font-size:.7rem;font-weight:600;white-space:nowrap;opacity:0;transition:opacity .2s;background:var(--color-neutral-900);color:var(--color-neutral-white);padding:2px 6px;border-radius:4px;z-index:10}.bar-income:hover .bar-label,.bar-expense:hover .bar-label{opacity:1}.column-net{width:80%;max-width:50px;border-radius:4px;transition:all .3s;flex-shrink:0}.column-net.positive{background:var(--color-success-600)}.column-net.negative{background:var(--color-danger-600)}.column-label{font-size:.75rem;color:var(--color-neutral-500);font-weight:500;margin-top:4px;text-align:center;flex-shrink:0}.chart-legend{display:flex;justify-content:center;gap:28px;margin-top:24px}.legend-item{display:flex;align-items:center;gap:10px;font-size:.875rem;color:var(--color-neutral-500)}.legend-dot{width:18px;height:18px;border-radius:5px}.legend-dot.income{background:linear-gradient(135deg,var(--color-success-600),var(--color-success-400))}.legend-dot.expense{background:linear-gradient(135deg,var(--color-danger-600),var(--color-danger-400))}.legend-dot.net{background:var(--color-information-600)}.category-analysis{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 8px #00000014}.category-grid{display:grid;gap:18px}.category-item{padding:18px;background:var(--color-neutral-50);border-radius:10px;transition:all .3s;animation:fadeInUp .3s ease-out backwards;animation-delay:var(--delay, 0s)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.category-item:hover{background:var(--color-neutral-100);transform:translate(4px)}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.category-name{font-weight:600;color:var(--color-neutral-900)}.category-percentage{font-weight:700;color:var(--color-information-600)}.category-bar-container{background:var(--color-neutral-200);height:10px;border-radius:5px;overflow:hidden;margin-bottom:10px}.category-bar{height:100%;background:linear-gradient(90deg,var(--color-information-600),var(--color-information-400));border-radius:5px;transition:width .5s ease-out}.category-stats{display:flex;justify-content:space-between;font-size:.875rem}.category-total{font-weight:600;color:var(--color-neutral-900)}.category-count{color:var(--color-neutral-500)}.patterns-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.pattern-card{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 8px #00000014}.weekly-chart{display:flex;justify-content:space-around;align-items:flex-end;height:220px;padding:24px 0;border-bottom:2px solid var(--color-neutral-200);gap:10px}.weekly-day{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px}.weekly-bar{width:100%;background:linear-gradient(to top,var(--color-information-600),var(--color-information-400));border-radius:4px 4px 0 0;transition:all .3s;cursor:pointer;min-height:4px}.weekly-bar:hover{background:linear-gradient(to top,var(--color-information-700),var(--color-information-600));transform:scaleY(1.05)}.weekly-label{font-size:.75rem;color:var(--color-neutral-500);font-weight:500}.vendor-list{display:flex;flex-direction:column;gap:14px}.vendor-item{display:flex;align-items:center;gap:14px;padding:14px;background:var(--color-neutral-50);border-radius:10px;transition:all .2s}.vendor-item:hover{background:var(--color-neutral-100);transform:translate(4px)}.vendor-rank{width:32px;height:32px;border-radius:50%;background:var(--color-information-600);color:var(--color-neutral-white);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.vendor-info{flex:1}.vendor-name{font-weight:600;color:var(--color-neutral-900);margin-bottom:2px}.vendor-count{font-size:.75rem;color:var(--color-neutral-500)}.vendor-total{font-weight:700;color:var(--color-neutral-900);font-size:1.125rem}.empty-state{text-align:center;padding:96px 24px}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state h3{color:#111827;margin-bottom:10px}.empty-state p{color:#6b7280}body.dark-mode .enhanced-analytics{background:#111827}body.dark-mode .stat-card,body.dark-mode .insights-section,body.dark-mode .detailed-metrics,body.dark-mode .visualization-section,body.dark-mode .category-analysis,body.dark-mode .pattern-card{background:#1f2937;border-color:#374151}body.dark-mode .stat-card.positive{background:linear-gradient(135deg,#064e3b,#1f2937)}body.dark-mode .stat-card.negative{background:linear-gradient(135deg,#7f1d1d,#1f2937)}body.dark-mode .section-title,body.dark-mode .stat-value,body.dark-mode .insight-title,body.dark-mode .category-name,body.dark-mode .vendor-name,body.dark-mode .category-total,body.dark-mode .vendor-total{color:#f9fafb}body.dark-mode .stat-label,body.dark-mode .insight-message,body.dark-mode .category-count,body.dark-mode .vendor-count,body.dark-mode .column-label,body.dark-mode .weekly-label,body.dark-mode .legend-item{color:#9ca3af}body.dark-mode .table-header,body.dark-mode .insight-card,body.dark-mode .category-item,body.dark-mode .vendor-item{background:#374151}body.dark-mode .table-row{background:#1f2937}body.dark-mode .table-row:hover,body.dark-mode .insight-card:hover,body.dark-mode .category-item:hover,body.dark-mode .vendor-item:hover{background:#4b5563}body.dark-mode .category-bar-container,body.dark-mode .chart-main{border-color:#374151}body.dark-mode .empty-state h3{color:#f9fafb}body.dark-mode .empty-state p{color:#9ca3af}body.dark-mode .insight-card.success{background:#22c55e1a;border-left-color:#22c55e}body.dark-mode .insight-card.warning,body.dark-mode .insight-card.alert{background:#f59e0b1a;border-left-color:#f59e0b}body.dark-mode .insight-card.info{background:#3b82f61a;border-left-color:#3b82f6}body.dark-mode .table-cell{color:#d1d5db}body.dark-mode .table-header .table-cell{color:#9ca3af}body.dark-mode .stat-card{box-shadow:0 2px 8px #0000004d}body.dark-mode .stat-card:hover{box-shadow:0 4px 12px #0006}@media(max-width:768px){.quick-stats,.insights-grid{grid-template-columns:1fr}.table-header,.table-row{grid-template-columns:1fr;gap:8px}.table-cell{padding:8px 12px;justify-content:space-between}.table-cell:before{content:attr(data-label);font-weight:600;color:#6b7280}.chart-main{height:200px;gap:6px;padding:12px 4px;overflow-x:auto}.chart-column{min-width:40px;max-width:60px}.column-bars{gap:2px}.bar-income,.bar-expense{min-width:10px;max-width:20px}.column-label{font-size:.65rem}.chart-legend{gap:14px;flex-wrap:wrap}.patterns-section{grid-template-columns:1fr}.stat-value{font-size:1.5rem}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:36px;flex-wrap:wrap;gap:24px}.page-actions{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-actions{justify-content:stretch}.page-actions button{flex:1}}.burn-rate-section{background:var(--color-neutral-white);border-radius:14px;padding:28px;box-shadow:0 2px 8px #00000014}.burn-rate-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}.burn-rate-section .stat-card{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200)}.burn-rate-section .stat-card.warning{background:linear-gradient(135deg,var(--color-warning-100) 0%,var(--color-neutral-white) 100%);border-left:4px solid var(--color-warning-600)}.burn-rate-section .stat-card.alert{background:linear-gradient(135deg,var(--color-danger-100) 0%,var(--color-neutral-white) 100%);border-left:4px solid var(--color-danger-600)}.stat-value.positive{color:var(--color-success-600)}.stat-value.negative{color:var(--color-danger-600)}
