.ct-background { width: 38px; height: 38px; cursor: pointer; border-radius: 100%; margin-inline-start: auto; background-color: rgba(255, 255, 255, 0.8); background-size: 10px 10px; background-image: url('data:image/webp;base64,UklGRjIAAABXRUJQVlA4TCUAAAAvE8AEAA9w7/97/9/7f/7jAYraNmI6AJQ/1xvvMojof2BSvVEBAA=='); } .ct-background-preview { display: flex; align-items: center; justify-content: center; position: relative; width: inherit; height: inherit; cursor: pointer; border-radius: inherit; box-sizing: border-box; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15); &[data-background-type='image'] { background-image: var(--background-image); background-size: cover; background-repeat: no-repeat; background-position: var(--background-position); } &[data-background-type='gradient'] { background-image: var(--background-image); background-size: cover; background-repeat: no-repeat; } // patterns &[data-background-type*='pattern'] { &:before { position: absolute; content: ''; width: calc(100% - 2px); height: calc(100% - 2px); top: 1px; inset-inline-start: 1px; border-radius: 100%; background-color: var(--pattern-color); mask: var(--pattern-mask); mask-size: 48px; mask-position: 50% 50%; } } }