/* Пиксельный курсор HOWEMINE. Вынесен в отдельный файл, чтобы SVG не переписывался компилятором шаблона.
   !important нужен: у кнопок и карточек курсор задан инлайново (cursor: pointer). */
html, body, * { cursor: url('assets/cursor-pixel.svg') 2 2, auto; }

/* Нативный список <select> рисуется ОС — кастомный курсор в нём не работает
   и браузер может вообще потерять курсор. Отдаём системный. */
select, select *, option, optgroup { cursor: default !important; }

a, button, label, summary, [role="button"],
[style*="cursor:pointer"], [style*="cursor: pointer"],
input[type="checkbox"], input[type="radio"], input[type="range"], input[type="file"], input[type="submit"] {
  cursor: url('assets/cursor-pixel.svg') 2 2, pointer !important;
}

/* Скроллбар — псевдоэлемент, `*` его не покрывает: при перетаскивании ползунка
   курсор слетал на системный. */
::-webkit-scrollbar, ::-webkit-scrollbar-track, ::-webkit-scrollbar-thumb,
::-webkit-scrollbar-corner, ::-webkit-scrollbar-button {
  cursor: url('assets/cursor-pixel.svg') 2 2, default !important;
}

input[type="text"], input[type="email"], input[type="number"], input[type="password"], input[type="search"], textarea,
[style*="cursor:text"], [style*="cursor: text"] {
  cursor: url('assets/cursor-pixel.svg') 2 2, text !important;
}

/* Пока тянут ползунок скроллбара, Chrome отдаёт системный курсор на весь документ —
   держим свой принудительно (класс ставит page-transition.js). */
html.hm-sbdrag, html.hm-sbdrag body, html.hm-sbdrag * {
  cursor: url('assets/cursor-pixel.svg') 2 2, default !important;
}
