/* BarsukCraft — кастомный стиль витрины EasyDonate под фирменную палитру сайта barsukcraft.ru */

:root {
  --bc-dirt-900: #1b1410;
  --bc-dirt-800: #241a14;
  --bc-dirt-700: #33241a;
  --bc-dirt-600: #4a3524;
  --bc-grass: #6aab3c;
  --bc-grass-bright: #8ed455;
  --bc-gold: #f5b942;
  --bc-gold-bright: #ffd166;
  --bc-redstone: #d94f45;
  --bc-text: #f3ece2;
  --bc-text-dim: #b6a894;
  --bc-line: #3d2c1f;
  --bc-shadow: 0 6px 0 rgba(0,0,0,.45);
}

/* Фон страницы и «тёмная» верхняя секция с логотипом.
   ВАЖНО: только background-color, не background-shorthand — иначе затирается
   background-image у карточек товаров (bg-elegant-night и подобные несут фото). */
body,
.bg-elegant-dark {
  background-color: var(--bc-dirt-900) !important;
  color: var(--bc-text) !important;
}

/* Атмосферный фон: медленно дышащее тёплое свечение костра/лавы + едва заметная текстура */
body {
  background-image:
    radial-gradient(ellipse 900px 500px at 15% -10%, rgba(217,79,69,.20), transparent 60%),
    radial-gradient(ellipse 700px 500px at 100% 110%, rgba(245,185,66,.14), transparent 60%),
    linear-gradient(rgba(27,20,16,.96), rgba(27,20,16,.96)),
    repeating-linear-gradient(45deg, rgba(255,255,255,.015) 0 2px, transparent 2px 40px) !important;
  background-attachment: fixed, fixed, fixed, fixed !important;
}
/* ВАЖНО: раньше здесь была анимация "дышащего" свечения через filter: brightness()
   на body — убрана намеренно. filter на body создаёт новый containing block для
   ЛЮБЫХ position:fixed потомков (спека CSS), включая модалку товара (Bootstrap
   .modal тоже fixed) — из-за этого окно покупки растягивалось на всю высоту
   страницы и уезжало за пределы экрана, кнопку купить нельзя было нажать ни в
   одном браузере. Статичное тёплое свечение (градиенты выше) остаётся, просто
   без пульсации. */

/* Плывущие вверх угольки — лёгкая амбиентная анимация поверх контента */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  background-image:
    radial-gradient(circle, rgba(245,185,66,.8) 0 2px, transparent 3px),
    radial-gradient(circle, rgba(255,209,102,.55) 0 1.5px, transparent 2.5px);
  background-size: 220px 260px, 160px 200px;
  background-position: 20px 0, 90px 40px;
  opacity: .45;
  animation: bc-embers-rise 18s linear infinite;
}
@keyframes bc-embers-rise {
  from { background-position: 20px 0, 90px 40px; }
  to   { background-position: 20px -1300px, 90px -1300px; }
}
@media (prefers-reduced-motion: reduce) {
  body, body::before { animation: none !important; }
}

/* Название магазина и заголовки */
.shop-name,
h1, h2, h3, h4, h5 {
  color: var(--bc-gold-bright) !important;
  font-family: "Arial Black", "Helvetica Neue", Impact, sans-serif !important;
  text-shadow: 0 2px 0 rgba(0,0,0,.5);
}

p, span, li, label {
  color: var(--bc-text);
}
.text-muted, small {
  color: var(--bc-text-dim) !important;
}

/* Карточки товаров и панелей — блочный вид как на основном сайте.
   Только background-color — сама картинка товара сидит во вложенном
   div.card-image с собственным background-image, его не трогаем. */
.card {
  background-color: var(--bc-dirt-800) !important;
  border: 3px solid var(--bc-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bc-shadow) !important;
}
.card:hover {
  transform: translateY(-2px);
  transition: transform .12s;
}
/* Явно не трогаем фон у контейнеров с картинкой товара/фоном профиля */
.card-image, [class*="bg-elegant-night"], [class*="bg-elegant-light"] {
  background-color: transparent !important;
}

/* Кнопки — травяной зелёный основной акцент, золото на выделенных */
.btn {
  border-radius: 4px !important;
  border: 3px solid var(--bc-line) !important;
  box-shadow: var(--bc-shadow) !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .02em;
  transition: transform .08s, background-color .15s !important;
}
.btn:active {
  transform: translateY(3px);
  box-shadow: 0 2px 0 rgba(0,0,0,.45) !important;
}
.btn-danger,
.btn-success,
.btn-primary,
.btn-info {
  background-color: var(--bc-grass) !important;
  border-color: var(--bc-grass) !important;
  color: #14210a !important;
}
.btn-danger:hover,
.btn-success:hover,
.btn-primary:hover,
.btn-info:hover {
  background-color: var(--bc-grass-bright) !important;
  border-color: var(--bc-grass-bright) !important;
}
.btn-warning {
  background-color: var(--bc-gold) !important;
  border-color: var(--bc-gold) !important;
  color: #2b1c00 !important;
}
.btn-warning:hover {
  background-color: var(--bc-gold-bright) !important;
}

/* Навигация */
.navbar,
.navbar .nav-link {
  color: var(--bc-text) !important;
}
.navbar .nav-link:hover,
a {
  color: var(--bc-gold) !important;
}

/* Поля ввода (ник, купоны и т.п.) */
input, textarea, select,
.form-control {
  background-color: var(--bc-dirt-900) !important;
  border: 2px solid var(--bc-line) !important;
  color: var(--bc-text) !important;
}
input::placeholder {
  color: var(--bc-text-dim) !important;
}

/* Цена товара — золотом, крупно */
[class*="price"] {
  color: var(--bc-gold-bright) !important;
  font-weight: 800 !important;
}

/* Ссылка «Как играть» в шапке — раньше терялась мелким текстом рядом с лого,
   почти никто не кликал. Превращаем в настоящую кнопку-приглашение (29.07.2026). */
a.nav-link[href*="/guide"] {
  background-color: var(--bc-gold) !important;
  color: #2b1c00 !important;
  padding: 8px 16px !important;
  border: 3px solid var(--bc-line) !important;
  border-radius: 4px !important;
  box-shadow: var(--bc-shadow) !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: .02em;
  transition: transform .08s, background-color .15s !important;
}
a.nav-link[href*="/guide"]:hover {
  background-color: var(--bc-gold-bright) !important;
  color: #2b1c00 !important;
  transform: translateY(-1px);
}
a.nav-link[href*="/guide"]::before {
  content: "🗺️ ";
}

/* Скроллбар в тон */
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background-color: var(--bc-dirt-900); }
::-webkit-scrollbar-thumb { background-color: var(--bc-dirt-600); border-radius: 4px; }
