@use 'sass:list'; @use 'sass:map'; @use 'sass:meta'; @use 'config'; @use 'include-media/dist/include-media' as media; @use 'iro-sass/src/props' as props; @mixin materialize-at-root($ref) { @if meta.type-of($ref) == 'map' { $ref: map.values($ref); } :root { @include props.materialize($ref, null); @each $breakpoint in map.keys(media.$breakpoints) { @include media.media('<=#{$breakpoint}') { @include props.materialize($ref, $breakpoint); } } @media (prefers-color-scheme: dark) { @include props.materialize($ref, 'dark'); } } @each $theme-name in map.keys(config.$themes) { @if $theme-name != config.$theme-default { @include bem.theme($theme-name) { @include props.materialize($ref, null); @each $breakpoint in map.keys(media.$breakpoints) { @include media.media('<=#{$breakpoint}') { @include props.materialize($ref, $breakpoint); } } @media (prefers-color-scheme: dark) { @include props.materialize($ref, 'dark'); } } } } }