Вам необходимо использовать js и событие ondragstart если вы хотите реализовать DnD. По этому событию можете ставить нужный курсор. Также есть событие onselect, поможет предотвратить случайную смену при выделении, если она все же происходит
Можно через css, если через js нужно, то используй событие https://www.w3schools.com/jsref/event_oninput.asp
Oninput и проверяй значение полей, если соответствуют условиям, то ставь класс красной кнопке, если нет, то удаляй
ну а как по твоему устроена функция asort. Это конечно не сортировка пузырьком, но тоже какой-то алгоритм (быстрая сортировка или merge sort хз как это в пхп). Разные алгоритмы используются в разных ситуациях. Их стоит знать если хочется заоптимизировать что-то с сортировками. К примеру bubbleSort используется в основном только в целяю обучения или если у нас почти весь массив отсортирован и нужно поменять 1-2 элемена и проходов будет не много.
никак. тень можно изменить только если изменить форму блока, к которой применятеся тень. если нужно сделать у контента картинки, которая сама по блоку квадратная, то только добавлять тень к самой картинке. Или использовать svg
Вам скорее всего подойдет elem.insertAdjacentHTML(where, html) https://learn.javascript.ru/modifying-document#ins...
Предупреждаю, что если вы не 100% уверены в этом материале и он может быть подменен пользователем то такой метод использовать ни в коем случае нельзя
Состояние это что-то локальное. Только на конкретной странице браузера. Если вы хотите чтобы у 2 отдельно открытых страниц было синхронизированно состояние то вам нужно использовать веб сокеты. Ну или другими протоколами. Можно по http сделать. Это лучший вариант
Есть костыль с cохранением в IDB https://learn.javascript.ru/indexeddb
или в localstorage, но костыль) Если по -человечески то подклдючать работу бэка