Нерегистрируемые custom properties и `var()`
БазовыйЭкспертный
Основано на спецификациях:
Базовый уровень
Объявление token-stream custom property
Case-sensitive имена custom properties
Наследование незарегистрированного custom property
Guaranteed-invalid initial value
Подстановка custom property как всего значения или компонента сложного значения
Простой fallback `var()`
Продвинутый уровень
Вложенные цепочки fallback
Запятые внутри fallback token stream
Подстановка custom properties в shorthands
Момент разрешения URL после подстановки
CSS-wide keywords в custom properties
Fallback contracts через shadow boundaries
Animation-tainted custom property values
Передача custom properties через Shadow DOM boundaries
Экспертный уровень
Построение dependency graph custom properties
Обнаружение прямых и косвенных cycles
Распространение guaranteed-invalid value
Invalidity consuming property на computed-value time