/* ============================================================
   PTNL Rating — Главная6 · СКРОЛЛ-РЕЖИССУРА (Mira-style)
   Дополняет home5.css. Пиннинг секций + пошаговое раскрытие.
   Айдентика (цвета/шрифты/тёмная тема) не меняется.
   ============================================================ */

/* ============================================================
   HOW IT WORKS — 4 шага (обычный reveal, пин снят)
   ============================================================ */
.steps .step {
  transition:
    background 0.45s var(--e-expo),
    border-color 0.45s var(--e-expo),
    transform 0.45s var(--e-expo),
    opacity 0.45s var(--e-expo),
    box-shadow 0.45s var(--e-expo);
}

/* ============================================================
   ANALYTICS — дашборд «собирается» по скроллу (пиннинг)
   ============================================================ */
.dash-tabs button {
  transition:
    background 0.35s var(--e-expo),
    color 0.35s var(--e-expo),
    box-shadow 0.35s;
  cursor: pointer;
}
.dash-tabs button:hover {
  color: var(--text);
  background: rgba(255, 255, 255, 0.05);
}
/* мягкая подсветка активного таба усилена в home5.css */

/* ============================================================
   CATEGORIES — категории сменяются по клику
   ============================================================ */
/* точки-индикаторы прогресса по категориям */
.cat-progress {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin-top: 26px;
}
.cat-progress i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--hair-2);
  transition: all 0.35s var(--e-expo);
  cursor: pointer;
}
.cat-progress i:hover {
  background: rgba(239, 78, 53, 0.5);
}
.cat-progress i.on {
  background: var(--accent-500);
  box-shadow: 0 0 10px rgba(239, 78, 53, 0.7);
  transform: scale(1.25);
}
.cat-visual .cat-badge {
  transition:
    transform 0.5s var(--e-expo),
    opacity 0.5s var(--e-expo);
}
.cat-visual .patbg {
  transition:
    opacity 0.6s var(--e-expo),
    transform 1.2s var(--e-expo);
}

/* ============================================================
   FLY-IN объекты (скраб): начальное состояние задаёт JS через GSAP
   ============================================================ */
.feat,
.aud {
  will-change: transform, opacity;
}

