/* MOST — базовые переходы, нажатие, фокус и доступность.
   Сами ховер-состояния берутся из атрибутов style-hover (см. hover-styles.js),
   поэтому здесь только плавность и общие мелочи, чтобы не конфликтовать. */

/* Плавный переход для интерактивных элементов (чтобы style-hover анимировался) */
button,
a,
summary,
label,
input[type="range"],
input[type="checkbox"],
[style-hover],
[style*="cursor:pointer"],
[style*="cursor: pointer"] {
  transition: transform .16s ease, filter .16s ease, box-shadow .16s ease,
              background-color .16s ease, color .16s ease, opacity .16s ease,
              border-color .16s ease;
}

/* Тактильный отклик на нажатие (для всех кликабельных) */
button:active,
a:active,
[style-hover]:active,
[style*="cursor:pointer"]:active,
[style*="cursor: pointer"]:active {
  transform: translateY(1px) scale(.99);
}

/* Ползунки калькулятора */
input[type="range"] { accent-color: #111; }
input[type="range"]::-webkit-slider-thumb { transition: transform .12s ease; }
input[type="range"]:active::-webkit-slider-thumb { transform: scale(1.25); }

/* Чекбокс согласия */
input[type="checkbox"] { accent-color: #C7F23E; cursor: pointer; }

/* Видимая обводка при навигации с клавиатуры (доступность) */
button:focus-visible,
a:focus-visible,
input:focus-visible,
summary:focus-visible,
[style*="cursor:pointer"]:focus-visible {
  outline: 2px solid #111;
  outline-offset: 2px;
}

/* Уважение к системной настройке «уменьшить движение» */
@media (prefers-reduced-motion: reduce) {
  button, a, summary, label, input,
  [style-hover], [style*="cursor:pointer"], [style*="cursor: pointer"] {
    transition: none !important;
  }
  button:active, a:active, [style-hover]:active { transform: none; }
}
