/* ===========================================
   ЭКСТРЕННАЯ ОПТИМИЗАЦИЯ ПРОИЗВОДИТЕЛЬНОСТИ
   Решает проблемы с загрузкой фона и компонентов
   =========================================== */

/* ПРИНУДИТЕЛЬНАЯ ВИДИМОСТЬ КРИТИЧЕСКОГО КОНТЕНТА */
.site-header,
.hero,
.hero-text-block-first,
.hero-text-block-second,
.main-background {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
}

/* ФИКС ФОНА - ПРИНУДИТЕЛЬНОЕ ОТОБРАЖЕНИЕ */
body {
  background: #1a1a1a !important;
  min-height: 100vh !important;
}

/* Убираем конфликтные правила для main-background - пусть грузится нормально */
.main-background {
  opacity: 1 !important;
  visibility: visible !important;
}

/* БОЛЬШОЕ СКРУГЛЕНИЕ SPLINE КОНТЕЙНЕРА ДЛЯ СКРЫТИЯ ЛОГОТИПА */
.spline-container,
spline-viewer {
  border-bottom-right-radius: 330px !important;
  overflow: hidden !important;
}

/* ОТКЛЮЧЕНИЕ SPLINE НА МОБИЛЬНЫХ И ПЛАНШЕТАХ */
@media (max-width: 1024px) {
  spline-viewer,
  .spline-container,
  .hero-spline-3d,
  #main-rotor-container,
  .clean-spline-viewer,
  .spline-scene {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
  
  /* Показываем статичные fallback */
  .spline-fallback {
    display: block !important;
    background: #2a2a2a !important;
    min-height: 300px !important;
    border-radius: 16px !important;
    position: relative !important;
  }
  
  .spline-fallback::after {
    content: "⚡ Optimized for your device";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #64748b;
    font-size: 14px;
    text-align: center;
  }
}

/* ЭКСТРЕННОЕ УПРОЩЕНИЕ АНИМАЦИЙ ДЛЯ ПРОИЗВОДИТЕЛЬНОСТИ */
.performance-mode *,
.performance-mode *::before,
.performance-mode *::after {
  animation-duration: 0.1s !important;
  transition-duration: 0.1s !important;
  animation-iteration-count: 1 !important;
  will-change: auto !important;
  transform: none !important;
}

/* ОТКЛЮЧЕНИЕ ТЯЖЕЛЫХ ЭФФЕКТОВ В PERFORMANCE MODE */
.performance-mode .cosmic-glow,
.performance-mode .shimmer,
.performance-mode .floating-animation,
.performance-mode .gradient-shift,
.performance-mode [class*="glow"],
.performance-mode [class*="pulse"],
.performance-mode [class*="float"],
.performance-mode [class*="cosmic"],
.performance-mode .btn::before,
.performance-mode .btn::after {
  animation: none !important;
  background: #1e293b !important;
  opacity: 1 !important;
  transform: none !important;
}

/* БЫСТРАЯ ЗАГРУЗКА - ПОКАЗЫВАЕМ КОНТЕНТ НЕМЕДЛЕННО */
.fast-load .site-header {
  transform: translateY(0) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.fast-load .hero-text-block-first,
.fast-load .hero-text-block-second {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* УПРОЩЕННЫЕ КНОПКИ ДЛЯ МОБИЛЬНЫХ */
.mobile-optimized .btn {
  background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%) !important;
  border: 1px solid #3b82f6 !important;
  transform: none !important;
  animation: none !important;
}

.mobile-optimized .btn:hover {
  background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%) !important;
  transform: translateY(-1px) !important;
}

.mobile-optimized .btn::before,
.mobile-optimized .btn::after {
  display: none !important;
}

/* УПРОЩЕНИЕ HERO СЕКЦИИ */
.mobile-optimized .hero-title,
.mobile-optimized .hero-subtitle {
  text-shadow: none !important;
  animation: none !important;
}

.mobile-optimized .text-glow-equals {
  color: #f59e0b !important;
  text-shadow: none !important;
  animation: none !important;
}

/* ОТКЛЮЧЕНИЕ ВИДЕО КУБА НА СЛАБЫХ УСТРОЙСТВАХ */
.performance-mode .video-cube-container {
  display: none !important;
}

.performance-mode .video-section {
  min-height: 400px !important;
}

/* УПРОЩЕНИЕ НАВИГАЦИИ */
.performance-mode .cosmic-nav,
.performance-mode .burger-menu .cosmic-rings {
  animation: none !important;
  background: #1e293b !important;
}

/* ОТКЛЮЧЕНИЕ ПАРЯЩИХ ЭФФЕКТОВ FAQ */
.performance-mode .faq-item {
  animation: none !important;
  transform: none !important;
  position: static !important;
}

/* SAFARI СПЕЦИФИЧНЫЕ ОПТИМИЗАЦИИ */
.safari-optimized {
  -webkit-backface-visibility: hidden !important;
  -webkit-perspective: 1000px !important;
}

.safari-optimized * {
  -webkit-transform: translateZ(0) !important;
  -webkit-backface-visibility: hidden !important;
}

/* ПЛАНШЕТНЫЕ ОПТИМИЗАЦИИ */
.tablet-optimized .floating-project-card {
  animation: none !important;
  transform: none !important;
  position: static !important;
}

/* ЭКСТРЕННОЕ ИСПРАВЛЕНИЕ Z-INDEX ПРОБЛЕМ */
.site-header {
  z-index: 1000 !important;
  position: relative !important;
}

.hero-text-block-first {
  z-index: 100 !important;
  position: relative !important;
}

/* ПРИНУДИТЕЛЬНАЯ ЗАГРУЗКА ШРИФТОВ */
@font-face {
  font-family: 'Inter';
  font-display: swap;
  src: local('Inter'), url('/fonts/inter.woff2') format('woff2');
}

/* ОПТИМИЗАЦИЯ ИЗОБРАЖЕНИЙ */
img {
  loading: lazy !important;
  decoding: async !important;
}

.performance-mode img {
  image-rendering: auto !important;
  image-rendering: -webkit-optimize-contrast !important;
}

/* ОТКЛЮЧЕНИЕ TRANSFORM3D НА СЛАБЫХ УСТРОЙСТВАХ */
.performance-mode * {
  transform3d: none !important;
  will-change: auto !important;
}

/* УПРОЩЕНИЕ ГРАДИЕНТОВ */
.performance-mode [class*="gradient"] {
  background: #1e293b !important;
}

/* БЫСТРЫЕ ПЕРЕХОДЫ */
.fast-load * {
  transition: opacity 0.1s ease, transform 0.1s ease !important;
}

/* КРИТИЧЕСКИЕ МЕДИА ЗАПРОСЫ */
@media (max-width: 768px) {
  /* Отключаем все тяжелые эффекты на мобильных */
  * {
    animation: none !important;
    transform: none !important;
  }
  
  .hero-text-block-first,
  .hero-text-block-second {
    height: 100vh !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media (max-width: 480px) {
  /* Максимальное упрощение для очень слабых устройств */
  body * {
    box-shadow: none !important;
    text-shadow: none !important;
    animation: none !important;
    transition: none !important;
  }
}

/* LOADING SPINNER ДЛЯ КРИТИЧЕСКИХ ЭЛЕМЕНТОВ */
.loading-critical::before {
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  border: 4px solid #334155;
  border-top: 4px solid #3b82f6;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  transform: translate(-50%, -50%);
  z-index: 9999;
}

@keyframes spin {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(360deg); }
} 