.page--analytics{padding-inline:16px;flex-direction:column;padding-bottom:24px;display:flex}.analytics-header{margin-bottom:16px}.analytics-header__title{background:var(--text-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:24px;font-weight:800}.analytics-header__subtitle{color:var(--text-secondary);margin:6px 0 0;font-family:Inter,system-ui,sans-serif;font-size:13px}.analytics-periods{background:#0f0f23b8;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px;padding:4px;display:grid}.analytics-periods__btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 8px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;transition:color .15s,background .15s}.analytics-periods__btn--active{color:#ecfdf5;background:#22c55e2e}.analytics-error,.analytics-empty{margin:0;font-family:Inter,system-ui,sans-serif;font-size:14px}.analytics-empty{color:var(--text-secondary)}.analytics-error{color:#f87171}.analytics-content{flex-direction:column;gap:20px;display:flex}.analytics-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.analytics-stat{background:#0f0f23b8;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.analytics-stat--accent{background:linear-gradient(135deg,#22c55e29,#10b98114),#0f0f23b8;border-color:#22c55e3d;grid-column:1/-1}.analytics-stat--negative{border-color:#f8717133}.analytics-stat__icon{color:#86efac;display:inline-flex}.analytics-stat--negative .analytics-stat__icon{color:#fca5a5}.analytics-stat__label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:600}.analytics-stat__value{color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:20px;font-weight:700}.analytics-stat--accent .analytics-stat__value{font-size:28px}.analytics-section__head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.analytics-section__title{color:var(--text-primary);margin:0 0 10px;font-family:Montserrat,sans-serif;font-size:16px;font-weight:700}.analytics-section__head .analytics-section__title{margin-bottom:0}.analytics-section__hint{color:#cbd5e18c;margin:0;font-family:Inter,system-ui,sans-serif;font-size:11px}.analytics-chart{background:#0f0f23b8;border:1px solid #ffffff14;border-radius:14px;padding:16px 12px 8px}.analytics-chart__legend{color:var(--text-secondary);gap:12px;margin-bottom:12px;font-family:Inter,system-ui,sans-serif;font-size:11px;display:flex}.analytics-chart__legend-item{align-items:center;gap:6px;display:inline-flex}.analytics-chart__legend-dot{border-radius:50%;width:8px;height:8px}.analytics-chart__legend-dot--income{background:#4ade80}.analytics-chart__legend-dot--expense{background:#f87171}.analytics-chart__bars{align-items:flex-end;gap:8px;height:132px;display:flex}.analytics-chart__bar-wrap{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.analytics-chart__bar-group{align-items:flex-end;gap:3px;height:100%;display:flex}.analytics-chart__bar{border-radius:6px 6px 3px 3px;width:10px}.analytics-chart__bar--income{background:linear-gradient(#86efac 0%,#22c55e 100%)}.analytics-chart__bar--expense{background:linear-gradient(#fca5a5 0%,#ef4444 100%)}.analytics-chart__label{text-transform:lowercase;color:#cbd5e1b3;font-family:Inter,system-ui,sans-serif;font-size:11px}.analytics-ranking{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.analytics-ranking__item{background:#0f0f23b8;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.analytics-ranking__rank{color:#bbf7d0;background:#22c55e29;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.analytics-ranking__rank--expense{color:#fecaca;background:#f8717129}.analytics-ranking__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.analytics-ranking__name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:500;overflow:hidden}.analytics-ranking__meta{color:var(--text-secondary);font-family:Inter,system-ui,sans-serif;font-size:12px}.analytics-ranking__value{color:#bbf7d0;flex-shrink:0;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600}.analytics-ranking__value--expense{color:#fecaca}.analytics-section--expenses .analytics-section__title,.analytics-section--clients .analytics-section__title{margin-bottom:10px}
