/* ═══════════════════════════════════════════════════════════════════
   ПОДБОР ПЛЁНКИ — единая типографическая система
   Подключается на ВСЕХ страницах сайта.
   Один шрифт для всего: Inter (легко читается, поддерживает кириллицу,
   нет visualnoise как у Manrope).
   ═══════════════════════════════════════════════════════════════════ */

/* Подключение шрифта Inter — Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500;700&display=swap');

/* ─── Базовый ресет на весь документ ────────────────────────────── */
:root {
  --nv-font-base: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --nv-font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', Consolas, monospace;
}

html, body {
  font-family: var(--nv-font-base);
  /* Сглаживание — текст не «жирнеет» в Yandex/Chrome на тёмном фоне */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  /* Базовые межбуквенные / межсловные интервалы */
  letter-spacing: 0;
  word-spacing: 0;
  font-feature-settings: 'kern' 1, 'liga' 1;
}

/* Все наследники — тот же шрифт по умолчанию */
body, body *,
input, select, textarea, button,
h1, h2, h3, h4, h5, h6,
p, span, div, label, a, li {
  font-family: var(--nv-font-base);
}

/* Только эти классы используют моноширинный шрифт.
   Никакой случайной JetBrains Mono в инлайн-стилях. */
.mono, code, kbd, pre, samp,
.eyebrow, .nv-eyebrow,
[class*="-eyebrow"] {
  font-family: var(--nv-font-mono) !important;
}

/* ─── Заголовки ─────────────────────────────────────────────────── */
h1, .h1 {
  font-size: clamp(1.7rem, 3.6vw, 2.6rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin: 0 0 16px;
}
h2, .h2 {
  font-size: clamp(1.4rem, 2.6vw, 2rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.015em;
  margin: 0 0 14px;
}
h3, .h3 {
  font-size: clamp(1.15rem, 1.8vw, 1.4rem);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
  margin: 0 0 10px;
}
h4, .h4 {
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.35;
  margin: 0 0 8px;
}

/* ─── Текст параграфы ───────────────────────────────────────────── */
p {
  font-size: 0.95rem;
  font-weight: 400;
  line-height: 1.55;
  margin: 0 0 12px;
}
p:last-child { margin-bottom: 0; }

small, .small {
  font-size: 0.78rem;
  line-height: 1.45;
}

/* ─── Кнопки — без слипшихся букв ──────────────────────────────── */
button, .btn, [class*="btn-"], [class*="nv-btn"] {
  font-family: var(--nv-font-base) !important;
  font-weight: 600;
  letter-spacing: 0;
  word-spacing: 0;
  /* Чтобы эмодзи + слово не сливались */
  white-space: nowrap;
}

/* ─── Поля ввода ────────────────────────────────────────────────── */
input, select, textarea {
  font-family: var(--nv-font-base) !important;
  font-size: 0.95rem;
  font-weight: 400;
  letter-spacing: 0;
}
input::placeholder, textarea::placeholder {
  font-family: var(--nv-font-base);
  font-weight: 400;
  opacity: 0.5;
}

/* ─── Eyebrow / пилюли (мелкий моноширинный заголовок) ─────────── */
.eyebrow, .nv-eyebrow {
  font-family: var(--nv-font-mono) !important;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  word-spacing: 0.05em;
}

/* ─── Сообщения / статусы — не слипаются ───────────────────────── */
.status-box, .status-message,
[id*="Message"], [id*="message"] {
  font-family: var(--nv-font-base) !important;
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  word-spacing: 0.04em;
  white-space: normal !important;
}

/* ─── Бейджи, чипы ──────────────────────────────────────────────── */
.badge, .chip, .pill {
  font-family: var(--nv-font-base);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

/* ─── Числа, метрики, кредиты — моноширинно (выглядит «технологично») */
.metric, .number, .wallet-amount, .balance-amount,
[id*="walletBalance"], [id*="balance"] {
  font-family: var(--nv-font-mono);
  font-weight: 700;
  font-feature-settings: 'tnum' 1;  /* tabular numbers */
}

/* ─── Cnтролы навигации — нормальные интервалы ─────────────────── */
nav, nav *, .nav, .nav * {
  font-family: var(--nv-font-base) !important;
  letter-spacing: 0;
}

/* ─── Утилиты, которые часто нужны ──────────────────────────────── */
.text-tight    { letter-spacing: -0.01em; }
.text-loose    { letter-spacing: 0.04em; }
.text-uppercase{ text-transform: uppercase; letter-spacing: 0.08em; }

/* ─── Fix для иконок-эмодзи рядом с текстом — пробел не схлопывается */
.btn span:not(:last-child),
.nv-btn-primary span:not(:last-child),
.nv-btn-ghost span:not(:last-child),
.btn-video span:not(:last-child) {
  margin-right: 6px;
}
