/* ==========================================================================
   RUStrengthSMP — PREMIUM NEON THEME (С ФИКСОМ КАРТИНОК ТОВАРОВ)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;800;900&display=swap');

/* Глобальный фон и шрифт */
html, body, .bg-elegant-dark, main {
  background-color: #050508 !important;
  color: #ffffff !important;
  font-family: 'Montserrat', sans-serif !important;
}

/* Летающие неоновые частицы */
body::before {
  content: "" !important;
  position: fixed !important;
  top: 0; left: 0; width: 100%; height: 100%;
  pointer-events: none; z-index: 1;
  background-image: 
    radial-gradient(circle at 15% 25%, rgba(255, 0, 60, 0.6) 2px, transparent 4px),
    radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.8) 1.5px, transparent 4px),
    radial-gradient(circle at 45% 70%, rgba(255, 0, 60, 0.5) 3px, transparent 6px),
    radial-gradient(circle at 85% 85%, rgba(255, 255, 255, 0.5) 2px, transparent 4px);
  background-size: 350px 350px;
  animation: floatingParticles 20s linear infinite !important;
}

/* Шапка */
.navbar-main {
  background: rgba(5, 5, 8, 0.8) !important;
  backdrop-filter: blur(10px) !important;
  border-bottom: 2px solid #ff003c !important;
  z-index: 20 !important;
}

/* Заголовок (опущен ниже, чтобы не наезжал на шапку) */
#welcome-section {
  background: radial-gradient(ellipse at center, rgba(150, 0, 30, 0.2) 0%, rgba(5, 5, 8, 0.95) 70%) !important;
  padding: 130px 0 60px 0 !important;
  border-bottom: 1px solid rgba(255, 0, 60, 0.2) !important;
}

.shop-name {
  color: #ffffff !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 15px rgba(255, 0, 60, 0.8), 0 0 30px #ff003c !important;
  animation: neonPulse 2s infinite alternate !important;
}

/* Убираем кривые волны */
.pattern.bottom, .pattern svg { display: none !important; }

/* Поиск */
.form-group .input-group, .input-group input.form-control {
  background: #0d0d14 !important;
  border: 1px solid rgba(255, 0, 60, 0.3) !important;
  color: #ffffff !important;
  border-radius: 12px !important;
}

/* =========================================================
   ФИКС КАРТОЧЕК И КАРТИНКИ (МЕЧА) 
   ========================================================= */
.profile-card, .shop .card, .card.bg-elegant {
  background: #0f1016 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.8) !important;
  overflow: hidden !important;
  transition: all 0.4s ease !important;
  margin-top: 20px !important;
}

.profile-card:hover {
  transform: translateY(-8px) scale(1.02) !important;
  border-color: #ff003c !important;
  box-shadow: 0 20px 40px rgba(255, 0, 60, 0.3) !important;
}

/* Красивая зона для твоей картинки */
.card-image, .bg-elegant-night {
  min-height: 200px !important;
  background-size: contain !important; /* Картинка помещается целиком */
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-color: #161822 !important;
  border-bottom: 2px solid #ff003c !important;
  transition: transform 0.5s ease !important;
}

.profile-card:hover .card-image {
  transform: scale(1.08) !important;
}

/* Тексты внутри карточки */
.card-body { padding: 20px !important; }

.card-title, .profile-card h3 {
  color: #ffffff !important;
  font-weight: 900 !important;
  font-size: 1.3rem !important;
  margin-top: 10px !important;
}

.badge {
  background: #ff003c !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
}

.card-footer {
  background: transparent !important;
  border: none !important;
  padding: 0 20px 20px 20px !important;
}

.card-footer h6, .price {
  color: #ffffff !important;
  font-size: 1.5rem !important;
  font-weight: 900 !important;
}

/* Корзина */
.fixed-bottom-right { bottom: 30px !important; right: 30px !important; z-index: 9999 !important; }

.basket-button {
  background: #ff003c !important;
  width: 60px !important; height: 60px !important;
  border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  border: 3px solid #ffffff !important;
  box-shadow: 0 0 25px rgba(255, 0, 60, 0.8) !important;
  animation: basketHeartbeat 2s infinite !important;
}

.basket-button i { font-size: 1.5rem !important; color: #ffffff !important; }
.basket-button .cart-counter {
  background: #ffffff !important;
  color: #ff003c !important;
  font-weight: 900 !important;
  border: 2px solid #ff003c !important;
}

footer.footer { background: #030305 !important; border-top: 1px solid rgba(255, 0, 60, 0.2) !important; }

/* Анимации */
@keyframes neonPulse {
  0% { text-shadow: 0 0 10px rgba(255, 0, 60, 0.5); }
  100% { text-shadow: 0 0 20px #ff003c, 0 0 40px #ff003c; }
}
@keyframes basketHeartbeat {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}
@keyframes floatingParticles {
  0% { transform: translateY(0); }
  100% { transform: translateY(-200px); }
}

