CSS переменные в оригинале называются "пользовательские свойства" (custom properties). То есть по поведению это такие же свойства как и любые другие, вроде width, height и т.п. за исключением того, что они используются в качестве значений. Для них действуют те же правила наследования. и если --bg определен в родителе, и не переопределен в дочке, то будет использоваться значение из родителя.
Проще говоря, сделать то, что вы хотите - не получится. У меня как-то раз тоже возникало такое желание, но увы.