/* ==========================================================================
   МИНИМАЛЬНЫЕ ОБНОВЛЕНИЯ БАЗОВЫХ СТИЛЕЙ (НЕ ВЛИЯЮТ НА ПК ВЕРСИЮ)
   Добавить в начало style.css или создать отдельный файл base-updates.css
   ========================================================================== */

/* Только базовые улучшения, которые не сломают ПК дизайн */

/* Улучшенный box-sizing для всех элементов */
*, *::before, *::after {
  box-sizing: border-box;
}

/* Адаптивные изображения */
img {
  max-width: 100%;
  height: auto;
}

/* Улучшенная типографика для лучшей читаемости */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

/* Предотвращение горизонтального скролла */
body {
  overflow-x: hidden;
}

/* Улучшенные ссылки и кнопки для touch устройств */
a, button {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* Скрытые элементы для screen readers */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Утилиты для управления отображением */
.d-none { display: none !important; }
.d-block { display: block !important; }
.d-inline { display: inline !important; }
.d-inline-block { display: inline-block !important; }

/* Утилиты только для мобильных (не влияют на ПК) */
@media (max-width: 767px) {
  .d-sm-none { display: none !important; }
  .d-sm-block { display: block !important; }
  .d-sm-inline { display: inline !important; }
  .d-sm-inline-block { display: inline-block !important; }
}

/* Утилиты только для ПК (скрыты на мобильных) */
@media (min-width: 768px) {
  .d-md-none { display: none !important; }
  .d-md-block { display: block !important; }
  .d-md-inline { display: inline !important; }
  .d-md-inline-block { display: inline-block !important; }
}

/* Базовые стили для мобильного меню (не влияют на существующие стили) */
.mobile-menu-btn {
  display: none; /* По умолчанию скрыто */
}

/* Улучшенная доступность */
.skip-link {
  position: absolute;
  top: -40px;
  left: 6px;
  background: #1f68bb;
  color: white;
  padding: 8px;
  text-decoration: none;
  border-radius: 4px;
  z-index: 2000;
  font-size: 14px;
  transition: top 0.3s ease;
}

.skip-link:focus {
  top: 6px;
}

/* Стили для touch устройств */
.touch-device button:active {
  opacity: 0.8;
  transition: opacity 0.1s ease;
}

/* Плавные переходы для улучшения UX */
@media (prefers-reduced-motion: no-preference) {
  * {
    scroll-behavior: smooth;
  }
}

/* Отключение анимаций для пользователей с настройкой reduced-motion */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Фокус для лучшей доступности */
:focus {
  outline: 2px solid #1f68bb;
  outline-offset: 2px;
}

/* Убираем outline для мыши, оставляем для клавиатуры */
:focus:not(:focus-visible) {
  outline: none;
}

/* Улучшенные кнопки для сенсорных устройств */
@media (pointer: coarse) {
  button,
  input[type="button"],
  input[type="submit"],
  input[type="reset"] {
    min-height: 44px;
    min-width: 44px;
  }
}

/* Адаптивные таблицы для мобильных */
@media (max-width: 767px) {
  table {
    font-size: 14px;
  }
  
  th, td {
    padding: 8px 4px;
  }
}

/* Улучшенные формы для мобильных */
@media (max-width: 767px) {
  input,
  textarea,
  select {
    font-size: 16px; /* Предотвращает зум на iOS */
  }
}

/* Базовые стили для печати */
@media print {
  .no-print {
    display: none !important;
  }
  
  a[href]:after {
    content: " (" attr(href) ")";
  }
  
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
}

/* Поддержка темной темы (только базовые элементы) */
@media (prefers-color-scheme: dark) {
  .auto-dark {
    background-color: #2d2d2a;
    color: #ffffff;
  }
  
  .auto-dark a {
    color: #9bcaff;
  }
}