/* Иконки для кнопок - уникальные селекторы с префиксом #special */
#special .special-images button i.icon-image:before,
#special .special-settings button i.icon-settings:before,
#special .special-quit button i.icon-close:before {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 1;
}

#special .special-images button i.icon-image:before {
  content: "🖼";
}

#special .special-images button[value="0"] i.icon-image:before {
  content: "🚫";
}

#special .special-settings button i.icon-settings:before {
  content: "⚙";
}

#special .special-quit button i.icon-close:before {
  content: "✕";
}

#special .special-images button i,
#special .special-settings button i,
#special .special-quit button i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-style: normal;
  font-weight: normal;
  color: inherit;
}

/* Иконки наследуют цвет кнопки */
#special .special-images button i:before,
#special .special-settings button i:before,
#special .special-quit button i:before {
  color: inherit !important;
}

/* Иконки наследуют цвет из цветовой схемы */
html.special-color-1 #special .special-images button i:before,
html.special-color-1 #special .special-settings button i:before,
html.special-color-1 #special .special-quit button i:before {
  color: #000000 !important;
}

html.special-color-2 #special .special-images button i:before,
html.special-color-2 #special .special-settings button i:before,
html.special-color-2 #special .special-quit button i:before {
  color: #ffffff !important;
}

html.special-color-3 #special .special-images button i:before,
html.special-color-3 #special .special-settings button i:before,
html.special-color-3 #special .special-quit button i:before {
  color: #062042 !important;
}

html.special-color-4 #special .special-images button i:before,
html.special-color-4 #special .special-settings button i:before,
html.special-color-4 #special .special-quit button i:before {
  color: #5c4033 !important;
}

html.special-color-5 #special .special-images button i:before,
html.special-color-5 #special .special-settings button i:before,
html.special-color-5 #special .special-quit button i:before {
  color: #90ee90 !important;
}

/* Панель - изолированные стили с уникальными селекторами */
#special {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 999999 !important;
  text-align: center !important;
  padding: 12px 0 !important;
  user-select: none !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  display: block !important;
  width: 100% !important;
  /* Базовые значения по умолчанию */
  background: #ffffff !important;
  color: #000000 !important;
  border-bottom: 2px solid #000000 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
  /* Переопределение возможных стилей сайта */
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  /* Сброс всех возможных стилей сайта */
  float: none !important;
  clear: none !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-transform: none !important;
  text-decoration: none !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-shadow: none !important;
  list-style: none !important;
  /* Обеспечиваем кликабельность */
  pointer-events: auto !important;
  touch-action: manipulation !important;
}

/* Убеждаемся, что все элементы внутри панели кликабельны */
#special * {
  pointer-events: auto !important;
}

/* Исключение для текстовых элементов - они не должны блокировать клики */
#special span,
#special i,
#special .button-label {
  pointer-events: none !important;
}

/* Применение цветовых схем к панели */
html.special-color-1 #special {
  background: #ffffff !important;
  color: #000000 !important;
  border-bottom-color: #000000 !important;
}

html.special-color-1 #special * {
  color: #000000 !important;
  border-color: #000000 !important;
}

html.special-color-2 #special {
  background: #000000 !important;
  color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

html.special-color-2 #special * {
  color: #ffffff !important;
  border-color: #ffffff !important;
}

html.special-color-3 #special {
  background: #4a90e2 !important;
  color: #062042 !important;
  border-bottom-color: #062042 !important;
}

html.special-color-3 #special * {
  color: #062042 !important;
  border-color: #062042 !important;
}

html.special-color-4 #special {
  background: #f7f2e3 !important;
  color: #5c4033 !important;
  border-bottom-color: #5c4033 !important;
}

html.special-color-4 #special * {
  color: #5c4033 !important;
  border-color: #5c4033 !important;
}

html.special-color-5 #special {
  background: #032a21 !important;
  color: #90ee90 !important;
  border-bottom-color: #90ee90 !important;
}

html.special-color-5 #special * {
  color: #90ee90 !important;
  border-color: #90ee90 !important;
}

/* Применение размеров шрифта к панели */
html.special-font-size-1 #special {
  font-size: 16px !important;
}

html.special-font-size-1 #special .special-panel button {
  font-size: 16px !important;
}

html.special-font-size-2 #special {
  font-size: 20px !important;
}

html.special-font-size-2 #special .special-panel button {
  font-size: 20px !important;
}

html.special-font-size-3 #special {
  font-size: 32px !important;
}

html.special-font-size-3 #special .special-panel button {
  font-size: 32px !important;
}

/* Применение семейства шрифта к панели */
html.special-font-family-1 #special {
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important;
}

html.special-font-family-2 #special {
  font-family: "Times New Roman", Times, serif !important;
}

/* Применение межстрочного интервала к панели */
html.special-line-height-1 #special {
  line-height: 1.2 !important;
}

html.special-line-height-2 #special {
  line-height: 1.5 !important;
}

html.special-line-height-3 #special {
  line-height: 1.8 !important;
}

/* Применение межбуквенного интервала к панели */
html.special-letter-spacing-1 #special {
  letter-spacing: normal !important;
}

html.special-letter-spacing-2 #special {
  letter-spacing: 1px !important;
}

html.special-letter-spacing-3 #special {
  letter-spacing: 2px !important;
}

#special .special-panel {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 15px !important;
  width: 100% !important;
  /* Сброс стилей сайта */
  margin: 0 !important;
  float: none !important;
  clear: none !important;
  position: relative !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  max-width: none !important;
  min-width: 0 !important;
}

#special .special-panel > div {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  padding: 8px 14px !important;
  border-radius: 0 !important;
  flex-shrink: 0 !important;
  /* Сброс стилей сайта */
  margin: 0 !important;
  float: none !important;
  clear: none !important;
  position: relative !important;
  border: none !important;
  box-shadow: none !important;
  overflow: visible !important;
  max-width: none !important;
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
}

#special .special-panel > div > span {
  color: inherit !important;
  font-weight: bold !important;
  display: inline-block !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  position: relative !important;
  vertical-align: baseline !important;
  text-transform: none !important;
  text-decoration: none !important;
  font-style: normal !important;
  line-height: inherit !important;
}

#special .special-panel button {
  border: 2px solid currentColor !important;
  color: inherit !important;
  min-width: 50px !important;
  min-height: 50px !important;
  padding: 8px 12px !important;
  border-radius: 5px !important;
  cursor: pointer !important;
  font-size: 16px !important; /* Явный размер вместо inherit для предотвращения исчезновения текста */
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.18s ease !important;
  position: relative !important;
  font-weight: bold !important;
  margin: 0 !important;
  float: none !important;
  clear: none !important;
  width: auto !important;
  height: auto !important;
  /* Сброс стилей сайта */
  box-shadow: none !important;
  text-transform: none !important;
  text-decoration: none !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-shadow: none !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  overflow: visible !important;
  max-width: none !important;
  line-height: normal !important;
  vertical-align: baseline !important;
  /* Обеспечиваем кликабельность */
  pointer-events: auto !important;
  touch-action: manipulation !important;
  user-select: none !important;
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
}

/* Фон transparent для всех кнопок, кроме цветовых */
#special .special-font-size button,
#special .special-images button,
#special .special-settings button,
#special .special-quit button,
#special .special-font-family button,
#special .special-line-height button,
#special .special-letter-spacing button {
  background: transparent !important;
}

/* Кнопки внутри - вертикально для иконки и текста */
#special .special-panel button {
  flex-direction: column !important;
}

#special .special-font-size,
#special .special-images,
#special .special-settings,
#special .special-quit {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Кнопки цветовых схем - по центру */
#special .special-color {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  gap: 8px !important;
}

/* Защита от глобальных стилей сайта для всех элементов панели */
#special *,
#special *::before,
#special *::after {
  box-sizing: border-box !important;
}

/* Кнопки размера шрифта - буква A разных размеров */
#special .special-font-size button[value="1"] {
  font-size: 14px;
}

#special .special-font-size button[value="2"] {
  font-size: 20px;
}

#special .special-font-size button[value="3"] {
  font-size: 28px;
}

/* Кнопки цвета - фон = цвет фона схемы, текст = цвет текста схемы */
#special .special-color button[value="1"] {
  background: #ffffff !important;
  color: #000000 !important;
  border-color: #000000 !important;
}

#special .special-color button[value="2"] {
  background: #000000 !important;
  color: #ffffff !important;
  border-color: #000000 !important;
}

#special .special-color button[value="3"] {
  background: #4a90e2 !important;
  color: #062042 !important;
  border-color: #062042 !important;
}

#special .special-color button[value="4"] {
  background: #f7f2e3 !important;
  color: #5c4033 !important;
  border-color: #5c4033 !important;
}

#special .special-color button[value="5"] {
  background: #032a21 !important;
  color: #90ee90 !important;
  border-color: #90ee90 !important;
}

/* Активные кнопки в панели - бордовая рамка */
#special .special-panel button.active {
  transform: scale(1.05) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
  border-color: #8B0000 !important;
  border-width: 3px !important;
}


/* Hover для всех кнопок панели - бордовая рамка */
#special .special-panel button:hover {
  transform: scale(1.05) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
  border-color: #8B0000 !important;
  border-width: 3px !important;
}

/* Кнопки размера наследуют цвет из схемы */
#special .special-font-size button {
  color: inherit !important;
}

/* Hover и active для кнопок размера - бордовая рамка */
#special .special-font-size button:hover,
#special .special-font-size button.active {
  color: inherit !important;
  background: transparent !important;
  border-color: #8B0000 !important;
  border-width: 3px !important;
  transform: scale(1.05) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* Иконки сохраняют свой цвет при hover */
#special .special-panel button:hover i,
#special .special-panel button:hover i:before {
  color: inherit !important;
}

/* Для цветовых кнопок hover - бордовая рамка */
#special .special-color button:hover {
  color: inherit !important;
  border-color: #8B0000 !important;
  border-width: 3px !important;
}

#special .special-color button:hover i,
#special .special-color button:hover i:before {
  color: inherit !important;
}

/* Активные цветовые кнопки - бордовая рамка */
#special .special-color button.active {
  border-color: #8B0000 !important;
  border-width: 3px !important;
}

#special #special-settings-body {
  display: none !important;
  padding: 16px !important;
  margin: 0 auto !important;
  border-radius: 0 !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2) !important;
  /* Базовые значения по умолчанию */
  background: #ffffff !important;
  color: #000000 !important;
  border-bottom: 2px solid #000000 !important;
  font-size: 15px !important;
  font-family: Arial, Helvetica, sans-serif !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
}

/* Применение цветовых схем к блоку настроек */
html.special-color-1 #special #special-settings-body {
  background: #ffffff !important;
  color: #000000 !important;
}

html.special-color-1 #special #special-settings-body * {
  color: #000000 !important;
  border-color: #000000 !important;
}

/* Кнопки в настройках наследуют цвет из схемы */
html.special-color-1 #special #special-settings-body button {
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-style: solid !important;
  color: currentColor !important;
}

html.special-color-2 #special #special-settings-body {
  background: #000000 !important;
  color: #ffffff !important;
}

html.special-color-2 #special #special-settings-body * {
  color: #ffffff !important;
  border-color: #ffffff !important;
}

html.special-color-2 #special #special-settings-body button {
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-style: solid !important;
  color: currentColor !important;
}

html.special-color-3 #special #special-settings-body {
  background: #4a90e2 !important;
  color: #062042 !important;
}

html.special-color-3 #special #special-settings-body * {
  color: #062042 !important;
  border-color: #062042 !important;
}

html.special-color-3 #special #special-settings-body button {
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-style: solid !important;
  color: currentColor !important;
}

html.special-color-4 #special #special-settings-body {
  background: #f7f2e3 !important;
  color: #5c4033 !important;
}

html.special-color-4 #special #special-settings-body * {
  color: #5c4033 !important;
  border-color: #5c4033 !important;
}

html.special-color-4 #special #special-settings-body button {
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-style: solid !important;
  color: currentColor !important;
}

html.special-color-5 #special #special-settings-body {
  background: #032a21 !important;
  color: #90ee90 !important;
}

html.special-color-5 #special #special-settings-body * {
  color: #90ee90 !important;
  border-color: #90ee90 !important;
}

html.special-color-5 #special #special-settings-body button {
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-style: solid !important;
  color: currentColor !important;
}

#special #special-settings-body h2 {
  color: inherit !important;
  border-bottom-color: inherit !important;
}

#special #special-settings-body span {
  color: inherit !important;
}

/* Блок действий - кнопки в одну строку */
#special #special-settings-body .special-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 20px 0 !important;
  padding: 0 !important;
}

#special #special-settings-body .special-actions button {
  margin: 0 !important;
}

/* Применение размеров шрифта к блоку настроек */
html.special-font-size-1 #special #special-settings-body {
  font-size: 14px !important;
}

html.special-font-size-1 #special #special-settings-body button {
  font-size: 14px !important;
}

html.special-font-size-2 #special #special-settings-body {
  font-size: 18px !important;
}

html.special-font-size-2 #special #special-settings-body button {
  font-size: 18px !important;
}

html.special-font-size-3 #special #special-settings-body {
  font-size: 24px !important;
}

html.special-font-size-3 #special #special-settings-body button {
  font-size: 24px !important;
}

/* Применение семейства шрифта к блоку настроек */
html.special-font-family-1 #special #special-settings-body {
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important;
}

html.special-font-family-2 #special #special-settings-body {
  font-family: "Times New Roman", Times, serif !important;
}

/* Применение межстрочного интервала к блоку настроек */
html.special-line-height-1 #special #special-settings-body {
  line-height: 1.2 !important;
}

html.special-line-height-2 #special #special-settings-body {
  line-height: 1.5 !important;
}

html.special-line-height-3 #special #special-settings-body {
  line-height: 1.8 !important;
}

/* Применение межбуквенного интервала к блоку настроек */
html.special-letter-spacing-1 #special #special-settings-body {
  letter-spacing: normal !important;
}

html.special-letter-spacing-2 #special #special-settings-body {
  letter-spacing: 1px !important;
}

html.special-letter-spacing-3 #special #special-settings-body {
  letter-spacing: 2px !important;
}

/* изменения на странице при включённом режиме (html.special) */

html.special {
  /* базовые увеличения читаемости */
  font-size: 18px !important;
  line-height: 1.5 !important;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important;
  /* Масштабируемая верстка - предотвращение горизонтальной прокрутки */
  overflow-x: hidden !important;
  /* Не ограничиваем max-width для html, чтобы не ломать верстку */
}

html.special body {
  overflow-x: hidden !important;
  /* Не ограничиваем max-width для body, чтобы не ломать верстку */
  box-sizing: border-box !important;
}

html.special * {
  box-sizing: border-box !important;
}

/* Ограничение ширины только для изображений и медиа-элементов, чтобы не ломать верстку */
html.special img,
html.special video,
html.special iframe,
html.special embed,
html.special object {
  max-width: 100% !important;
  height: auto !important;
}

/* Исключение для логотипа - требования не применяются */
html.special img[alt*="логотип"],
html.special img[alt*="лого"],
html.special .logo,
html.special [class*="logo"] {
  max-width: none !important;
}


/* адаптив */
@media (max-width: 560px) {
  #special .special-panel button { 
    min-width: 40px !important; 
    min-height: 40px !important; 
    padding: 6px 8px !important;
    font-size: 14px !important; 
  }
  #special .special-panel button i {
    font-size: 16px !important;
    height: 18px !important;
  }
  #special .special-panel button .button-label {
    font-size: 9px !important;
  }
  #special .special-font-size button[value="1"] {
    font-size: 12px !important;
  }
  #special .special-font-size button[value="2"] {
    font-size: 18px !important;
  }
  #special .special-font-size button[value="3"] {
    font-size: 24px !important;
  }
  body.special { 
    margin-top: 110px !important; 
    padding-top: 110px !important;
  }
}

/* небольшой отступ страницы, чтобы панель не перекрывала контент */
body.special { padding-top: 84px; }

/* ========== Правила, которые точно сработают ========== */

/* размеры шрифта (root) - до 200% масштабирование */
html.special-font-size-1 { font-size: 16px !important; }
html.special-font-size-2 { font-size: 20px !important; }
html.special-font-size-3 { font-size: 32px !important; } /* 200% от базового 16px */

/* семейство шрифта */
html.special-font-family-1 { font-family: Arial, "Helvetica Neue", Helvetica, sans-serif !important; }
html.special-font-family-2 { font-family: "Times New Roman", Times, serif !important; }

/* межстрочный интервал */
html.special-line-height-1 { line-height: 1.2 !important; }
html.special-line-height-2 { line-height: 1.5 !important; }
html.special-line-height-3 { line-height: 1.8 !important; }

/* межбуквенный интервал */
html.special-letter-spacing-1 { letter-spacing: normal !important; }
html.special-letter-spacing-2 { letter-spacing: 1px !important; }
html.special-letter-spacing-3 { letter-spacing: 2px !important; }

/* цветовые темы (применяются к body и к ссылкам) */
/* 1. Черный на белом - контраст 21:1 (соответствует требованиям 7:1) */
html.special-color-1, 
body.special-color-1,
html.special-color-1 body { 
  background:#ffffff !important; 
  color:#000000 !important; 
}
html.special-color-1 a, 
body.special-color-1 a,
html.special-color-1 body a { 
  color: #0000ff !important; 
  text-decoration: underline !important; 
}

/* 2. Белый на черном - контраст 21:1 */
html.special-color-2, 
body.special-color-2,
html.special-color-2 body { 
  background:#000000 !important; 
  color:#ffffff !important; 
}
html.special-color-2 a, 
body.special-color-2 a,
html.special-color-2 body a { 
  color: #ffff00 !important; 
  text-decoration: underline !important; 
}

/* 3. Темно-синий на голубом - контраст минимум 7:1 */
html.special-color-3, 
body.special-color-3,
html.special-color-3 body { 
  background:#4a90e2 !important; 
  color:#062042 !important; 
}
html.special-color-3 a, 
body.special-color-3 a,
html.special-color-3 body a { 
  color: #ffff00 !important; 
  text-decoration: underline !important; 
}

/* 4. Коричневый на бежевом - контраст минимум 7:1 */
html.special-color-4, 
body.special-color-4,
html.special-color-4 body { 
  background:#f7f2e3 !important; 
  color:#5c4033 !important; 
}
html.special-color-4 a, 
body.special-color-4 a,
html.special-color-4 body a { 
  color: #8b4513 !important; 
  text-decoration: underline !important; 
}

/* 5. Зеленый на темно-коричневом - контраст минимум 7:1 */
html.special-color-5, 
body.special-color-5,
html.special-color-5 body { 
  background:#032a21 !important; 
  color:#90ee90 !important; 
}
html.special-color-5 a, 
body.special-color-5 a,
html.special-color-5 body a { 
  color: #ffff00 !important; 
  text-decoration: underline !important; 
}

/* Переопределение фона для всех контейнеров и блоков под текстом */
html[class*="special-color"] body .container,
html[class*="special-color"] body .card,
html[class*="special-color"] body .test-section,
html[class*="special-color"] body .content-block,
html[class*="special-color"] body section,
html[class*="special-color"] body div[class*="content"],
html[class*="special-color"] body div[class*="block"],
html[class*="special-color"] body div[class*="section"],
html[class*="special-color"] body div[class*="container"],
html[class*="special-color"] body div[class*="wrapper"],
html[class*="special-color"] body div[class*="box"],
html[class*="special-color"] body main,
html[class*="special-color"] body article,
html[class*="special-color"] body aside {
  background: inherit !important;
  box-shadow: none !important;
}

/* Текст наследует цвет */
html[class*="special-color"] body p,
html[class*="special-color"] body h1,
html[class*="special-color"] body h2,
html[class*="special-color"] body h3,
html[class*="special-color"] body h4,
html[class*="special-color"] body h5,
html[class*="special-color"] body h6,
html[class*="special-color"] body span,
html[class*="special-color"] body div,
html[class*="special-color"] body li,
html[class*="special-color"] body td,
html[class*="special-color"] body th {
  color: inherit !important;
}

/* Исключения для медиа элементов */
html[class*="special-color"] body img,
html[class*="special-color"] body video,
html[class*="special-color"] body canvas,
html[class*="special-color"] body svg,
html[class*="special-color"] body iframe {
  background: transparent !important;
}

/* Общие стили для ссылок */
html[class*="special-color"] a,
body[class*="special-color"] a {
  text-decoration: underline !important;
  font-weight: bold !important;
}

/* Скрытие изображений и фоновых картинок */
html.special-images-0 img,
html.special-images-off img,
html.special-images-0 picture,
html.special-images-off picture,
html.special-images-0 svg,
html.special-images-off svg { 
  display: none !important; 
}

/* Скрытие фоновых изображений */
html.special-images-0 *,
html.special-images-off *,
html.special-images-0 *::before,
html.special-images-off *::before,
html.special-images-0 *::after,
html.special-images-off *::after {
  background-image: none !important;
  background: none !important;
}

/* Исключение для slick slider - восстанавливаем фоновые изображения */
html.special-images-0 .slick-arrow,
html.special-images-off .slick-arrow,
html.special-images-0 .slick-prev,
html.special-images-off .slick-prev,
html.special-images-0 .slick-next,
html.special-images-off .slick-next,
html.special-images-0 .slick-dots,
html.special-images-off .slick-dots,
html.special-images-0 .slick-dots li,
html.special-images-off .slick-dots li,
html.special-images-0 [class*="slick-"],
html.special-images-off [class*="slick-"],
html.special-images-0 [data-slick],
html.special-images-off [data-slick] {
  background-image: revert !important;
  background: revert !important;
}

html.special-images-0 .slick-arrow::before,
html.special-images-off .slick-arrow::before,
html.special-images-0 .slick-prev::before,
html.special-images-off .slick-prev::before,
html.special-images-0 .slick-next::before,
html.special-images-off .slick-next::before,
html.special-images-0 [class*="slick-"]::before,
html.special-images-off [class*="slick-"]::before {
  background-image: revert !important;
  background: revert !important;
}

/* Дополнительно для элементов с inline стилями */
html.special-images-0 [style*="background"],
html.special-images-off [style*="background"],
html.special-images-0 [style*="background-image"],
html.special-images-off [style*="background-image"] {
  background-image: none !important;
  background: none !important;
}

#special #special-settings-body button {
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-style: solid !important;
  color: inherit !important;
  padding: 10px 20px !important;
  border-radius: 5px !important;
  cursor: pointer !important;
  margin: 5px !important;
  font-size: 15px !important; /* Явный размер вместо inherit для предотвращения исчезновения текста */
  transition: all 0.18s ease !important;
  font-weight: bold !important;
  box-shadow: none !important;
}

/* Hover для кнопок в настройках - бордовая рамка */
#special #special-settings-body button:hover {
  border-color: #8B0000 !important;
  border-width: 3px !important;
  transform: scale(1.05) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* Активные кнопки в настройках - бордовая рамка */
#special #special-settings-body button.active {
  transform: scale(1.05) !important;
  font-weight: bold !important;
  filter: none !important;
  border-color: #8B0000 !important;
  border-width: 3px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* ========== Стили для форм - цвет не является способом передачи информации ========== */
html.special input[type="text"],
html.special input[type="email"],
html.special input[type="password"],
html.special input[type="number"],
html.special input[type="tel"],
html.special input[type="url"],
html.special textarea,
html.special select {
  border: 2px solid currentColor !important;
  background-color: transparent !important;
  color: inherit !important;
  padding: 8px !important;
  font-size: inherit !important;
  min-height: 44px !important; /* Минимальный размер для доступности */
}

/* Стили для placeholder - обеспечиваем видимость */
html.special input::placeholder,
html.special textarea::placeholder,
html.special input::-webkit-input-placeholder,
html.special textarea::-webkit-input-placeholder,
html.special input::-moz-placeholder,
html.special textarea::-moz-placeholder,
html.special input:-ms-input-placeholder,
html.special textarea:-ms-input-placeholder,
html.special input:-moz-placeholder,
html.special textarea:-moz-placeholder {
  color: inherit !important;
  opacity: 0.7 !important;
  font-size: inherit !important;
  font-family: inherit !important;
}

/* Placeholder для каждой цветовой схемы */
html.special-color-1 input::placeholder,
html.special-color-1 textarea::placeholder,
html.special-color-1 input::-webkit-input-placeholder,
html.special-color-1 textarea::-webkit-input-placeholder,
html.special-color-1 input::-moz-placeholder,
html.special-color-1 textarea::-moz-placeholder,
html.special-color-1 input:-ms-input-placeholder,
html.special-color-1 textarea:-ms-input-placeholder {
  color: #000000 !important;
  opacity: 0.7 !important;
}

html.special-color-2 input::placeholder,
html.special-color-2 textarea::placeholder,
html.special-color-2 input::-webkit-input-placeholder,
html.special-color-2 textarea::-webkit-input-placeholder,
html.special-color-2 input::-moz-placeholder,
html.special-color-2 textarea::-moz-placeholder,
html.special-color-2 input:-ms-input-placeholder,
html.special-color-2 textarea:-ms-input-placeholder {
  color: #ffffff !important;
  opacity: 0.7 !important;
}

html.special-color-3 input::placeholder,
html.special-color-3 textarea::placeholder,
html.special-color-3 input::-webkit-input-placeholder,
html.special-color-3 textarea::-webkit-input-placeholder,
html.special-color-3 input::-moz-placeholder,
html.special-color-3 textarea::-moz-placeholder,
html.special-color-3 input:-ms-input-placeholder,
html.special-color-3 textarea:-ms-input-placeholder {
  color: #062042 !important;
  opacity: 0.7 !important;
}

html.special-color-4 input::placeholder,
html.special-color-4 textarea::placeholder,
html.special-color-4 input::-webkit-input-placeholder,
html.special-color-4 textarea::-webkit-input-placeholder,
html.special-color-4 input::-moz-placeholder,
html.special-color-4 textarea::-moz-placeholder,
html.special-color-4 input:-ms-input-placeholder,
html.special-color-4 textarea:-ms-input-placeholder {
  color: #5c4033 !important;
  opacity: 0.7 !important;
}

html.special-color-5 input::placeholder,
html.special-color-5 textarea::placeholder,
html.special-color-5 input::-webkit-input-placeholder,
html.special-color-5 textarea::-webkit-input-placeholder,
html.special-color-5 input::-moz-placeholder,
html.special-color-5 textarea::-moz-placeholder,
html.special-color-5 input:-ms-input-placeholder,
html.special-color-5 textarea:-ms-input-placeholder {
  color: #90ee90 !important;
  opacity: 0.7 !important;
}

html.special input:focus,
html.special textarea:focus,
html.special select:focus {
  outline: 3px solid currentColor !important;
  outline-offset: 2px !important;
}

/* Поля формы с ошибками - не только цветом, но и текстом/иконкой */
html.special input.error,
html.special input:invalid,
html.special textarea.error,
html.special textarea:invalid {
  border: 3px solid currentColor !important;
  border-style: dashed !important;
}

html.special input.error::before,
html.special input:invalid::before {
  content: "Ошибка: " !important;
  color: inherit !important;
}

/* Кнопки - не только цветом */
html.special button,
html.special input[type="submit"],
html.special input[type="button"] {
  border: 2px solid currentColor !important;
  background-color: transparent !important;
  color: inherit !important;
  padding: 12px 24px !important;
  font-size: inherit !important;
  font-weight: bold !important;
  min-height: 44px !important;
  cursor: pointer !important;
}

/* Hover для всех кнопок на странице - бордовая рамка */
html.special button:hover,
html.special input[type="submit"]:hover,
html.special input[type="button"]:hover {
  border-color: #8B0000 !important;
  border-width: 3px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* Чекбоксы и радиокнопки - видимые без цвета */
html.special input[type="checkbox"],
html.special input[type="radio"] {
  width: 24px !important;
  height: 24px !important;
  border: 2px solid currentColor !important;
  background-color: transparent !important;
  accent-color: currentColor !important;
}

/* Обязательные поля - не только цветом */
html.special input:required,
html.special textarea:required,
html.special select:required {
  border-left: 5px solid currentColor !important;
}

html.special input:required::after,
html.special label:has(input:required)::after {
  content: " *" !important;
  color: inherit !important;
}

/* Улучшение читаемости для всех элементов */
html.special p,
html.special div,
html.special span,
html.special li,
html.special td,
html.special th {
  color: inherit !important;
}

/* Изображения с alt текстом - показывать текст при скрытии */
html.special-images-0 img[alt]:not([alt=""]),
html.special-images-off img[alt]:not([alt=""]) {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  height: auto !important;
  padding: 10px !important;
  border: 2px dashed currentColor !important;
  background: transparent !important;
  font-size: inherit !important;
  color: inherit !important;
}

html.special-images-0 img[alt]:not([alt=""])::after,
html.special-images-off img[alt]:not([alt=""])::after {
  content: " [Изображение: " attr(alt) "] " !important;
  display: block !important;
  margin-top: 5px !important;
  font-style: italic !important;
}
