.analysis-confidence{margin:0;padding:.55rem .8rem;border:1px solid var(--line);border-radius:.65rem;background:#f8fafc;color:var(--muted);font-size:.9rem}.analysis-confidence.partial{background:#fff8e8;border-color:#eacb78;color:#72500a}
.analysis-tabs{display:flex;gap:.4rem;overflow-x:auto;padding:.15rem 0 .75rem;scrollbar-width:thin}.analysis-tab{white-space:nowrap;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:.65rem .9rem;font-weight:700;cursor:pointer}.analysis-tab.active{background:var(--navy);border-color:var(--navy);color:#fff}
.analysis-filters{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:.7rem;align-items:end;padding:1rem;background:#f7fafc;border:1px solid var(--line);border-radius:1rem;margin-bottom:1rem}.analysis-filters label{display:grid;gap:.35rem;font-size:.78rem;font-weight:800;color:var(--muted)}.analysis-filters select,.analysis-filters input{min-width:0;width:100%;padding:.65rem .7rem;border:1px solid var(--line);border-radius:.6rem;background:#fff;color:var(--ink);font:inherit;font-size:.9rem}.filter-note{padding:.7rem .9rem;border-left:4px solid #1976a3;background:#eef8fc;border-radius:.35rem;color:#164d64}
.analysis-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:1rem 0}.analysis-kpi{padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#fff}.analysis-kpi span{display:block;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.analysis-kpi strong{display:block;margin:.35rem 0;font-size:1.35rem}.analysis-kpi small{color:var(--muted);line-height:1.35}
.analysis-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.analysis-panel{grid-column:span 6;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#fff;min-width:0}.analysis-panel.wide{grid-column:span 12}.analysis-panel h3{margin:.1rem 0 .25rem}.analysis-panel>p{margin:.1rem 0 1rem;color:var(--muted)}
.chart-wrap{min-height:240px;overflow-x:auto}.line-chart{width:100%;min-width:520px;height:240px}.line-chart .grid{stroke:#dce5eb;stroke-width:1}.line-chart .income{fill:none;stroke:#087f5b;stroke-width:3}.line-chart .expense{fill:none;stroke:#c0392b;stroke-width:3}.line-chart .result{fill:none;stroke:#1c5d8c;stroke-width:3}.line-chart circle{stroke:#fff;stroke-width:2}.chart-legend{display:flex;flex-wrap:wrap;gap:1rem;font-size:.82rem;color:var(--muted)}.legend-dot{display:inline-block;width:.65rem;height:.65rem;border-radius:50%;margin-right:.3rem}.legend-dot.income{background:#087f5b}.legend-dot.expense{background:#c0392b}.legend-dot.result{background:#1c5d8c}
.ranking{display:grid;gap:.7rem}.rank-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(120px,2fr) auto;gap:.7rem;align-items:center}.rank-row strong{overflow:hidden;text-overflow:ellipsis}.rank-bar{height:.65rem;border-radius:999px;background:#e6edf2;overflow:hidden}.rank-bar i{display:block;height:100%;background:#1c6f91;border-radius:inherit}.rank-row small{color:var(--muted)}
.composition{display:grid;gap:.8rem}.composition-row{display:grid;gap:.35rem}.composition-head{display:flex;justify-content:space-between;gap:1rem}.composition-track{height:.8rem;border-radius:999px;background:#e7edf1;overflow:hidden}.composition-track i{display:block;height:100%;background:#0b7b75}.comparison-table td,.comparison-table th{white-space:nowrap}.comparison-up{color:#a53327}.comparison-down{color:#087f5b}.analysis-warning{padding:.85rem;border-radius:.75rem;background:#fff8e8;border:1px solid #eacb78;color:#72500a}.analysis-empty-panel{padding:1.2rem;border:1px dashed var(--line);border-radius:.8rem;text-align:center;color:var(--muted)}
@media(max-width:1050px){.analysis-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.analysis-filters{grid-template-columns:1fr 1fr;padding:.8rem}.analysis-filters .secondary-button{grid-column:1/-1}.analysis-kpis{grid-template-columns:1fr 1fr}.analysis-panel,.analysis-panel.wide{grid-column:span 12}.rank-row{grid-template-columns:minmax(100px,1fr) minmax(90px,1.5fr);}.rank-row small{grid-column:1/-1}.analysis-tab{padding:.6rem .75rem}.chart-wrap{margin-inline:-.4rem}.analysis-kpi strong{font-size:1.1rem}}
@media(max-width:430px){.analysis-filters{grid-template-columns:1fr}.analysis-kpis{grid-template-columns:1fr}.analysis-confidence{width:100%}.composition-head{font-size:.9rem}}
