/* Вариативный Inter (текст) и Manrope (заголовки) с реальными весами и
   кириллицей — подключаются локально, разбиты по подмножествам символов. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url("../fonts/Inter-cyrillic.de93fdc85e3d.woff2") format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url("../fonts/Inter-latin.260c81a4759b.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+2000-206F, U+2190-21FF, U+2200-22FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/Manrope-cyrillic.e58febde317b.woff2") format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/Manrope-latin.938c6e8019b6.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+2000-206F, U+2190-21FF, U+2200-22FF;
}

@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/JetBrainsMono.4d05bb0e4a69.ttf") format('truetype');
}

:root {
  /* Surface palette */
  --background: #f8fafc;
  --foreground: #0f172a;
  --card: #FFFFFF;
  --card-foreground: #0f172a;
  --popover: #FFFFFF;
  --popover-foreground: #0f172a;
  --primary: #1e40af;
  --primary-foreground: #FFFFFF;
  --secondary: #f8fafc;
  --secondary-foreground: #0f172a;
  --surface-tint: #eff6ff;
  --muted: #eff6ff;
  --muted-foreground: #0f172a;
  --text-muted: #64748b;
  --accent: #1e40af;
  --accent-foreground: #FFFFFF;
  --destructive: #b91c1c;
  --danger-tint: #fef2f2;
  --primary-hover: #1c3aa0;
  --border: #e5e7eb;
  --input: #FFFFFF;
  --ring: #1e40af;
  /* Use palette-consistent chart colors (accent and neutrals) */
  --chart-1: #047857;
  --chart-2: #1e40af;
  --chart-3: #eff6ff;
  --chart-4: #e5e7eb;
  --chart-5: #64748b;
  --success: #047857;
  --success-tint: #ecfdf5;
  --warning: #b45309;
  --warning-tint: #fef3c7;

  /* Geometry */
  --radius: 10px;
  --radius-sm: calc(var(--radius) - 4px);
  --radius-md: calc(var(--radius) - 2px);
  --radius-lg: 12px;
  --radius-xl: calc(var(--radius-lg) + 4px);

  /* Typography */
  --font-sans: 'Inter', system-ui, sans-serif;
  --font-display: 'Manrope', 'Inter', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --text-base: 16px;
  --text-strong: 15px;

  /* Шкала отступов — единый ритм пространства на всей платформе */
  --space-1: 6px;
  --space-2: 12px;
  --space-3: 20px;
  --space-4: 32px;
  --space-5: 48px;
  --space-6: 72px;
}

body {
  background: var(--background);
  color: var(--foreground);
  font-family: var(--font-sans);
  font-size: var(--text-base);
  line-height: 1.6;
  letter-spacing: -0.005em;
  margin: 0;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, .plan-bar__percent, .eyebrow {
  font-family: var(--font-display);
  letter-spacing: -0.02em;
}
h1 { font-weight: 700; }
h2, h3 { font-weight: 600; }

html {
  scroll-behavior: smooth;
}

a {
  color: inherit;
}

button,
input,
select,
textarea {
  font: inherit;
}

.btn,
.button {
  border-radius: var(--radius);
  font-family: var(--font-sans);
}

.card {
  border-radius: var(--radius-lg);
}

.field,
.input,
textarea,
select {
  border-radius: var(--radius);
}

.token-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--card);
  border: 1px solid var(--border);
  color: var(--foreground);
  font-size: 14px;
}
