/**
 * Единая палитра и UI-токены — каталог Ленинского, страницы ЖК, фильтр, чат.
 * Подключается первым на body.ufa-nov-leninsky-page и body.ufa-nov-leninsky-jk-page.
 */
body.ufa-nov-leninsky-page,
body.ufa-nov-leninsky-jk-page {
  --ufa-font: "Onest", system-ui, -apple-system, sans-serif;
  --ufa-brand: #1d4ed8;
  --ufa-brand-mid: #2563eb;
  --ufa-brand-light: #3b82f6;
  --ufa-brand-soft: #eff6ff;
  --ufa-brand-muted: #dbeafe;
  --ufa-accent: #f59e0b;
  --ufa-accent-soft: #fef3c7;
  --ufa-accent-dark: #d97706;
  --ufa-success: #16a34a;
  --ufa-success-soft: #dcfce7;
  --ufa-surface: #ffffff;
  --ufa-surface-2: #f8fafc;
  --ufa-surface-3: #f1f5f9;
  --ufa-text: #0f172a;
  --ufa-text-secondary: #475569;
  --ufa-text-muted: #64748b;
  --ufa-text-faint: #94a3b8;
  --ufa-border: #e2e8f0;
  --ufa-border-strong: #cbd5e1;
  --ufa-shadow-sm: 0 4px 14px rgba(15, 23, 42, 0.06);
  --ufa-shadow-md: 0 10px 28px rgba(15, 23, 42, 0.1);
  --ufa-shadow-lg: 0 20px 48px rgba(15, 23, 42, 0.14);
  --ufa-radius-sm: 8px;
  --ufa-radius-md: 12px;
  --ufa-radius-lg: 16px;
  --ufa-radius-xl: 20px;
  --ufa-promo-bg: linear-gradient(155deg, #0f172a 0%, #1e293b 48%, #0c1222 100%);
  --ufa-btn-primary-bg: linear-gradient(180deg, var(--ufa-brand-light) 0%, var(--ufa-brand-mid) 55%, var(--ufa-brand) 100%);
  --ufa-btn-primary-shadow: #1e3a8a;
  --ufa-btn-dark-bg: linear-gradient(180deg, #334155 0%, #1e293b 55%, #0f172a 100%);
  --ufa-btn-dark-shadow: #020617;
  --ufa-btn-gold-bg: linear-gradient(180deg, #fde047 0%, #facc15 50%, #eab308 100%);
  --ufa-btn-gold-shadow: #a16207;
  --ufa-btn-soft-bg: linear-gradient(180deg, #fff 0%, var(--ufa-surface-2) 100%);
  --ufa-btn-soft-shadow: var(--ufa-brand-mid);
  color: var(--ufa-text);
  font-family: var(--ufa-font);
}

/* Шапка — только header-ufa.css (3D), здесь не переопределяем */

/* Общие ссылки */
body.ufa-nov-leninsky-page .ufa-ya a:not([class]),
body.ufa-nov-leninsky-jk-page .ufa-jk a {
  color: var(--ufa-brand-mid);
}
body.ufa-nov-leninsky-page .ufa-ya a:not([class]):hover,
body.ufa-nov-leninsky-jk-page .ufa-jk a:hover {
  color: var(--ufa-brand);
}

/* Первичная кнопка (компактная) */
.ufa-nov-leninsky-page .ufa-btn--primary,
.ufa-nov-leninsky-jk-page .ufa-btn--primary {
  border: 1px solid var(--ufa-brand);
  border-bottom-width: 3px;
  border-bottom-color: var(--ufa-btn-primary-shadow);
  background: var(--ufa-btn-primary-bg);
  color: #fff !important;
  font-weight: 700;
  border-radius: var(--ufa-radius-sm);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35), 0 3px 0 var(--ufa-btn-primary-shadow);
}

/* Чат Людмила наследует токены с body */
body.ufa-nov-leninsky-page .ufa-chatbot-wrap,
body.ufa-nov-leninsky-jk-page .ufa-chatbot-wrap {
  font-family: var(--ufa-font);
}

/* Вторичная — светлая */
.ufa-nov-leninsky-page .ufa-btn--soft,
.ufa-nov-leninsky-jk-page .ufa-btn--soft {
  border: 1px solid var(--ufa-border-strong);
  border-bottom-width: 3px;
  border-bottom-color: var(--ufa-btn-soft-shadow);
  background: var(--ufa-btn-soft-bg);
  color: var(--ufa-brand) !important;
  font-weight: 700;
  border-radius: var(--ufa-radius-sm);
}

/* Золотая CTA (телефон) */
.ufa-nov-leninsky-page .ufa-btn--gold,
.ufa-nov-leninsky-jk-page .ufa-btn--gold {
  border: 1px solid var(--ufa-accent-dark);
  border-bottom-width: 3px;
  border-bottom-color: var(--ufa-btn-gold-shadow);
  background: var(--ufa-btn-gold-bg);
  color: #422006 !important;
  font-weight: 800;
  border-radius: var(--ufa-radius-sm);
}

/* Тёмная CTA */
.ufa-nov-leninsky-page .ufa-btn--dark,
.ufa-nov-leninsky-jk-page .ufa-btn--dark {
  border: 1px solid #0f172a;
  border-bottom-width: 3px;
  border-bottom-color: var(--ufa-btn-dark-shadow);
  background: var(--ufa-btn-dark-bg);
  color: #fff !important;
  font-weight: 700;
  border-radius: var(--ufa-radius-sm);
}

/* ——— Анимации (уважаем prefers-reduced-motion) ——— */
@keyframes ufa-rise-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes ufa-scale-in {
  from {
    opacity: 0;
    transform: scale(0.98);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes ufa-glow-pulse {
  0%,
  100% {
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.35);
  }
  50% {
    box-shadow: 0 4px 20px rgba(245, 158, 11, 0.55);
  }
}

@keyframes ufa-chat-nudge {
  0%,
  88%,
  100% {
    transform: translateY(0) scale(1);
  }
  92% {
    transform: translateY(-3px) scale(1.04);
  }
  96% {
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: no-preference) {
  body.ufa-nov-leninsky-page .ufa-ya__cover,
  body.ufa-nov-leninsky-jk-page .ufa-jk__head {
    animation: ufa-rise-in 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
  }

  body.ufa-nov-leninsky-page .ufa-ya__filter--ya {
    animation: ufa-rise-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.06s both;
  }

  body.ufa-nov-leninsky-page .ufa-ya__offers {
    animation: ufa-rise-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.1s both;
  }

  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card {
    animation: ufa-rise-in 0.48s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(1) { animation-delay: 0.04s; }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(2) { animation-delay: 0.08s; }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(3) { animation-delay: 0.12s; }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(4) { animation-delay: 0.16s; }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(5) { animation-delay: 0.2s; }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(6) { animation-delay: 0.24s; }
  body.ufa-nov-leninsky-page .ufa-ya__grid .ufa-ya__card:nth-child(n + 7) { animation-delay: 0.28s; }

  body.ufa-nov-leninsky-jk-page .ufa-jk__gallery {
    animation: ufa-scale-in 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.05s both;
  }
  body.ufa-nov-leninsky-jk-page .ufa-jk__card {
    animation: ufa-rise-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.1s both;
  }
  body.ufa-nov-leninsky-jk-page .ufa-jk__plans {
    animation: ufa-rise-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.14s both;
  }

  body.ufa-nov-leninsky-page .ufa-ya__card {
    transition: transform 0.28s ease, box-shadow 0.28s ease;
  }
  body.ufa-nov-leninsky-page .ufa-ya__card:hover {
    transform: translateY(-4px);
    box-shadow: var(--ufa-shadow-md);
  }

  body.ufa-nov-leninsky-page .ufa-ya__img img {
    transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  }
  body.ufa-nov-leninsky-page .ufa-ya__link:hover .ufa-ya__img img {
    transform: scale(1.05);
  }

  body.ufa-nov-leninsky-page .ufa-ya__chip-tag,
  body.ufa-nov-leninsky-page .ufa-ya__filter--ya button,
  body.ufa-nov-leninsky-page .ufa-ya__chip {
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
  }
  body.ufa-nov-leninsky-page .ufa-ya__chip-tag:hover,
  body.ufa-nov-leninsky-page .ufa-ya__chip:hover {
    transform: translateY(-1px);
  }

  body.ufa-nov-leninsky-page .ufa-ya__promo-blue-badge {
    animation: ufa-glow-pulse 2.8s ease-in-out infinite;
  }

  body.ufa-nov-leninsky-page .ufa-ya__usp-dot,
  body.ufa-nov-leninsky-page .ufa-ya__usp-arrow {
    transition: background 0.25s ease, width 0.25s ease, transform 0.2s ease;
  }
  body.ufa-nov-leninsky-page .ufa-ya__usp-arrow:hover {
    transform: scale(1.08);
  }

  body.ufa-nov-leninsky-page .ufa-ya__offer,
  body.ufa-nov-leninsky-page .ufa-ya__ipoteka,
  body.ufa-nov-leninsky-page .ufa-len-navcalc-section {
    animation: ufa-rise-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.08s both;
  }

  body.ufa-nov-leninsky-page .ufa-ya__offer,
  body.ufa-nov-leninsky-page .ufa-ya__ipoteka {
    transition: transform 0.28s ease, box-shadow 0.28s ease;
  }
  body.ufa-nov-leninsky-page .ufa-ya__offer:hover {
    transform: translateY(-3px);
    box-shadow: var(--ufa-shadow-md);
  }

  body.ufa-nov-leninsky-page .ufa-chatbot-toggle,
  body.ufa-nov-leninsky-jk-page .ufa-chatbot-toggle {
    animation: ufa-chat-nudge 6s ease-in-out infinite;
  }

}
