@use 'sass:meta'; @use 'iro-sass/src/bem'; @use 'iro-sass/src/props'; @use '../props' as *; @forward 'popover.vars'; @use 'popover.vars' as vars; @mixin styles { @include materialize-at-root(meta.module-variables('vars')); @include bem.object('popover') { position: fixed; inset-block-start: 0; inset-inline-start: 0; z-index: props.get(vars.$z-index); padding-block: props.get(vars.$pad-b); padding-inline: props.get(vars.$pad-i); background-color: props.get(vars.$bg-color); filter: props.get(vars.$filter); border: props.get(vars.$border-width) solid props.get(vars.$border-color); border-radius: props.get(vars.$rounding); transform: translate(var(--x), var(--y)); @include bem.modifier('up-left') { transform: translate(var(--x), calc(var(--y) - 100%)); } @include bem.modifier('up-right') { transform: translate(calc(var(--x) - 100%), calc(var(--y) - 100%)); } @include bem.modifier('down-right') { transform: translate(calc(var(--x) - 100%), var(--y)); } } }