/* PUSK · project custom.css
   Канон: ui-kit/css/themes/pusk.css + tokens
   Цель: выровнять кнопки/ссылки/акценты без ручного правок каждого блока.
   Не трогаем: карусели (t1186), иконки соцсетей, явные нейтральные gray-кнопки.
*/

:root {
  --pusk-primary: #4c5cff;
  --pusk-primary-hover: #3f4fe6;
  --pusk-primary-dark: #2f41c0;
  --pusk-primary-soft: #edf1ff;
  --pusk-accent: #42e0b7;
  --pusk-accent-deep: #1a9f7a;
  --pusk-text: #182132;
  --pusk-text-muted: #66738d;
  --pusk-text-subtle: #8b97ad;
  --pusk-bg: #eef3fa;
  --pusk-bg-inverse: #05060a;
  --pusk-text-on-inverse: #ffffff;
  --pusk-text-on-inverse-muted: rgba(255, 255, 255, 0.72);
  --pusk-text-on-inverse-subtle: rgba(255, 255, 255, 0.45);
  --pusk-glow-primary: rgba(76, 92, 255, 0.22);
  --pusk-glow-primary-soft: rgba(76, 92, 255, 0.16);
  --pusk-glow-accent: rgba(66, 224, 183, 0.14);
  --pusk-radius-pill: 9999px;
  --pusk-font: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  /* Dark stack cards (pusk-stack / #rec3511599501) */
  --pusk-gradient-card-1: linear-gradient(135deg, #1a1f4a, #2f41c0 45%, #4c5cff);
  --pusk-gradient-card-2: linear-gradient(135deg, #121833, #4c5cff 48%, #8b95ff);
  --pusk-gradient-card-3: linear-gradient(135deg, #1a2250, #2f41c0 45%, #6b78ff);
  --pusk-gradient-card-4: linear-gradient(135deg, #0a2a22, #1a9f7a 50%, #42e0b7);
  --pusk-gradient-card-5: linear-gradient(135deg, #152045, #4c5cff 45%, #42e0b7);
  --pusk-gradient-card-6: linear-gradient(135deg, #0f172a, #2f41c0 48%, #42e0b7);
}

/* ─── Базовый текст ─── */
body,
.t-body,
.t-text,
.t-descr,
.t-name,
.t-title,
.t-uptitle {
  font-family: var(--pusk-font);
}

/* ─── Ссылки в контенте (не трогаем тёмный подвал / тёмные CTA) ─── */
.t-text a:not(.t-btn):not(.t-btnflex):not(.t-btntext):not(.tn-atom),
.t-descr a:not(.t-btn):not(.t-btnflex):not(.t-btntext):not(.tn-atom),
.t-redactor__text a,
.js-feed-post-text a {
  color: var(--pusk-primary) !important;
  border-bottom-color: var(--pusk-primary) !important;
}

.t-text a:not(.t-btn):not(.t-btnflex):not(.t-btntext):not(.tn-atom):hover,
.t-descr a:not(.t-btn):not(.t-btnflex):not(.t-btntext):not(.tn-atom):hover,
.t-redactor__text a:hover,
.js-feed-post-text a:hover {
  color: var(--pusk-primary-hover) !important;
  border-bottom-color: var(--pusk-primary-hover) !important;
}

/* Подвал (t420 / #rec1264556421): светлые мелкие ссылки на тёмном фоне */
#rec1264556421 a:not(.t-btn):not(.t-btnflex):not(.t-btntext),
#rec1264556421 .t-descr a,
#rec1264556421 .t-text a,
.t420 a:not(.t-btn):not(.t-btnflex):not(.t-btntext) {
  color: #e5e7eb !important;
  border-bottom: none !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

#rec1264556421 a:not(.t-btn):not(.t-btnflex):not(.t-btntext):hover,
#rec1264556421 .t-descr a:hover,
#rec1264556421 .t-text a:hover,
.t420 a:not(.t-btn):not(.t-btnflex):not(.t-btntext):hover {
  color: #ffffff !important;
}

#rec1264556421 .t-descr,
#rec1264556421 .t-text {
  font-size: 13px !important;
}

/* Тёмный CTA (cover/cover-like #rec1271780521): заголовок всегда белый */
#rec1271780521 .t-title,
#rec1271780521 .t-section__title,
#rec1271780521 h1,
#rec1271780521 h2 {
  color: #ffffff !important;
}

/* ─── Primary CTA (t-btnflex_type_button + submit) ─── */
.t-btnflex_type_button,
.t-btnflex_type_submit,
.t-submit.t-btnflex_type_submit {
  background-color: var(--pusk-primary) !important;
  background-image: none !important;
  color: #ffffff !important;
  border-color: var(--pusk-primary) !important;
  border-radius: var(--pusk-radius-pill) !important;
  font-weight: 600 !important;
  box-shadow: 0 4px 12px rgba(76, 92, 255, 0.18);
  transition: background-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.t-btnflex_type_button:hover,
.t-btnflex_type_button:focus-visible,
.t-btnflex_type_submit:hover,
.t-btnflex_type_submit:focus-visible,
.t-submit.t-btnflex_type_submit:hover,
.t-submit.t-btnflex_type_submit:focus-visible {
  background-color: var(--pusk-primary-hover) !important;
  border-color: var(--pusk-primary-hover) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(76, 92, 255, 0.24);
}

.t-btnflex_type_button .t-btnflex__text,
.t-btnflex_type_submit .t-btnflex__text,
.t-submit .t-btnflex__text {
  color: inherit !important;
}

/* ─── Secondary / outline-ish (type_button2) ─── */
.t-btnflex_type_button2 {
  background-color: var(--pusk-primary-soft) !important;
  background-image: none !important;
  color: var(--pusk-primary-dark) !important;
  border-color: transparent !important;
  border-radius: var(--pusk-radius-pill) !important;
  font-weight: 600 !important;
  box-shadow: none;
}

.t-btnflex_type_button2:hover,
.t-btnflex_type_button2:focus-visible {
  background-color: #dde5ff !important;
  color: var(--pusk-primary-dark) !important;
}

.t-btnflex_type_button2 .t-btnflex__text {
  color: inherit !important;
}

/* ─── Text-buttons (ссылки-кнопки без заливки) ─── */
.t-btntext {
  color: var(--pusk-primary) !important;
  font-weight: 600 !important;
}

.t-btntext:hover,
.t-btntext:focus-visible {
  color: var(--pusk-primary-hover) !important;
}

/* ─── Zero Block: atom-кнопки с «хвостовым» синим Tailwind ─── */
a.tn-atom[style*="2563eb"],
a.tn-atom[style*="2563EB"],
div.tn-atom[style*="2563eb"],
div.tn-atom[style*="2563EB"],
.tn-elem a.tn-atom[style*="background-color:#2563eb"],
.tn-elem a.tn-atom[style*="background-color: #2563eb"] {
  background-color: var(--pusk-primary) !important;
  border-color: var(--pusk-primary) !important;
  color: #ffffff !important;
}

a.tn-atom[style*="2563eb"]:hover,
a.tn-atom[style*="2563EB"]:hover,
div.tn-atom[style*="2563eb"]:hover,
div.tn-atom[style*="2563EB"]:hover {
  background-color: var(--pusk-primary-hover) !important;
  border-color: var(--pusk-primary-hover) !important;
}

/* Перекраска частых «хвостовых» синих в сгенерированных стилях блоков */
[style*="background-color:#2563eb"],
[style*="background-color: #2563eb"],
[style*="background-color:#1d4ed8"],
[style*="background-color: #1d4ed8"] {
  background-color: var(--pusk-primary) !important;
}

[style*="color:#2563eb"],
[style*="color: #2563eb"],
[style*="color:#1d4ed8"],
[style*="color: #1d4ed8"] {
  color: var(--pusk-primary) !important;
}

/* ─── Акцент успеха оставляем зелёным (#10b981), не трогаем ─── */

/* ─── Фокус ─── */
.t-btnflex:focus-visible,
.t-submit:focus-visible,
.t-btntext:focus-visible {
  outline: 3px solid rgba(76, 92, 255, 0.28);
  outline-offset: 2px;
}
