/* ══════════════════════════════════════════
   ANALYTICS — дашборд аналитики
══════════════════════════════════════════ */

.ac-page  { display:flex; flex-direction:column; height:100%; overflow:auto; padding:16px; gap:12px; }
.ac-hdr   { display:flex; align-items:center; gap:16px; margin-bottom:4px; }
.ac-title { font-family:'Rajdhani',sans-serif; font-size:18px; font-weight:700; letter-spacing:3px; color:var(--txt-hi); }
.ac-period{ font-size:10px; color:var(--txt-lo); letter-spacing:2px; margin-left:auto; }

/* ── Скелетон ── */
.ac-skeleton { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; padding:20px; }
.ac-skeleton-card { height:80px; background:rgba(42,53,69,.4); animation:pulse 1.2s ease-in-out infinite; }
@keyframes pulse { 0%,100%{opacity:.4} 50%{opacity:.8} }
.ac-error { padding:40px; text-align:center; color:var(--red); font-size:14px; }
.ac-empty { padding:20px; text-align:center; color:var(--txt-lo); font-size:12px; }

/* ── KPI ── */
.ac-kpi-row { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin-bottom:16px; }
.ac-kpi { padding:16px; background:rgba(26,34,48,.6); border:1px solid; text-align:center; }
.ac-kpi-icon  { font-size:20px; margin-bottom:6px; }
.ac-kpi-num   { font-family:'Rajdhani',sans-serif; font-size:22px; font-weight:700; }
.ac-kpi-label { font-size:10px; color:var(--txt-lo); letter-spacing:1px; margin-top:2px; }
.ac-kpi-sub   { font-size:9px; color:var(--txt-lo); margin-top:2px; }

/* ── Строки ── */
.ac-body  { display:flex; flex-direction:column; gap:12px; }
.ac-row2  { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.ac-card  { background:rgba(26,34,48,.6); border:1px solid rgba(255,255,255,.06); padding:16px; }
.ac-card-title { font-family:'Rajdhani',sans-serif; font-size:11px; font-weight:700; letter-spacing:2px; color:var(--txt-lo); margin-bottom:12px; }

/* ── Линейный график ── */
.ac-chart-wrap   { position:relative; }
.ac-chart-labels { display:flex; justify-content:space-between; margin-top:4px; }
.ac-chart-labels span { font-size:9px; color:var(--txt-lo); font-family:'Share Tech Mono',monospace; }
.ac-revenue-total { font-size:11px; color:var(--txt-lo); margin-top:8px; }
.ac-revenue-total b { color:var(--gold); }

/* ── Donut ── */
.ac-donut-wrap { display:inline-flex; }
.ac-donut-row  { display:flex; align-items:center; gap:16px; }
.ac-legend     { display:flex; flex-direction:column; gap:6px; flex:1; }
.ac-legend-item { display:flex; align-items:center; gap:8px; font-size:11px; color:var(--txt); }
.ac-legend-dot  { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.ac-legend-val  { margin-left:auto; color:var(--txt-hi); font-weight:600; }

/* ── Топ команд ── */
.ac-teams-list { display:flex; flex-direction:column; gap:8px; }
.ac-team-row   { display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.04); }
.ac-team-rank  { font-family:'Share Tech Mono',monospace; font-size:12px; color:var(--txt-lo); width:24px; }
.ac-team-ava   { width:28px; height:28px; border:1px solid; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; flex-shrink:0; }
.ac-team-info  { flex:1; }
.ac-team-name  { font-size:13px; color:var(--txt-hi); font-weight:600; }
.ac-team-sub   { font-size:10px; color:var(--txt-lo); }
.ac-team-earned { font-size:13px; color:var(--gold); font-weight:700; font-family:'Rajdhani',sans-serif; }

/* ── Бары типов ── */
.ac-bars    { display:flex; flex-direction:column; gap:10px; }
.ac-bar-row { display:flex; align-items:center; gap:8px; }
.ac-bar-label { font-size:10px; color:var(--txt-lo); width:120px; flex-shrink:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ac-bar-track { flex:1; height:4px; background:rgba(42,53,69,.8); }
.ac-bar-fill  { height:100%; transition:width .5s ease; }
.ac-bar-val   { font-size:11px; color:var(--txt-hi); width:30px; text-align:right; }

/* ── Кнопка назад (алиас из orders.css) ── */
.ac-page .ob-back-btn {
  font-family: 'Share Tech Mono', monospace; font-size: 10px;
  color: var(--txt-lo); letter-spacing: 2px; padding: 5px 10px;
  border: 1px solid var(--steel-hi); background: transparent; cursor: pointer;
  transition: all var(--transition);
}
.ac-page .ob-back-btn:hover { color: var(--gold); border-color: var(--gold); }
