@import url('https://fonts.googleapis.com/css2?family=Playfair+Display+SC:wght@700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');

@font-face {
    font-family: 'RussianRail G Pro';
    src: url('../assets/fonts/RussianRailGPro.otf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  background-color: var(--color-bg);
  color: var(--color-text-main);
  font-family: var(--font-text); /* Принудительно для всего тела */
  line-height: 1.7;
  overflow-x: hidden;
  position: relative;
}

/* Эффект легкой винтажной виньетки по краям экрана */
body::before {
  content: '';
  position: fixed;
  top: 0; left: 0; width: 100vw; height: 100vh;
  box-shadow: inset 0 0 150px rgba(0, 0, 0, 0.15);
  pointer-events: none;
  z-index: 999;
}

/* Кастомный скроллбар */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--color-bg); }
::-webkit-scrollbar-thumb { background: var(--color-border); border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: var(--color-text-muted); }

/* Анимации появления */
.fade-in { animation: fadeIn 1s cubic-bezier(0.25, 0.8, 0.25, 1) forwards; opacity: 0; transform: translateY(20px); }
@keyframes fadeIn { to { opacity: 1; transform: translateY(0); } }

/* Винтажный разделитель */
.vintage-divider {
  border: 0;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--color-text-muted), transparent);
  margin: 30px 0;
}

/* Переопределение шрифтов для всех элементов ввода */
button, input, textarea, select {
  font-family: var(--font-text);
}