.al-imagemagnify {
display: inline-block;
position: relative;
overflow: visible;
}
.al-imagemagnify-container,
.al-imagemagnify,
.al-imagemagnify-container img,
.al-imagemagnify-background {
user-drag: none; 
user-select: none;
-moz-user-select: none;
-webkit-user-drag: none;
-webkit-user-select: none;
-ms-user-select: none;
}
.al-imagemagnify-area {
position: absolute;
width: 150px;
height: 150px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border-radius: 100%;
border: 2px solid black;
background: white;
overflow: hidden;
z-index: 11;
}
.al-imagemagnify-area:active,
.al-imagemagnify-area *:active {
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.al-imagemagnify-area .al-imagemagnify-background {
width: 100%;
height: 100%;
background-repeat: no-repeat;
}
.al-square > .al-imagemagnify .al-imagemagnify-area {
border-radius: 0;
}
.al-imagemagnify-highlight {
display: none;
position: absolute;
top: 0;
right: 0;
width: 150%;
height: 0;
padding-bottom: 150%;
background: rgba(255,255,255,0.2);
transform: rotate(53deg) translate(60%, -70%);
transform-origin: 100% 0%;
}
.al-highlight .al-imagemagnify-highlight {
display: block;
}
.al-imagemagnify-container.al-click-move .al-imagemagnify {
cursor: crosshair;
}
.al-imagemagnify-text {
position: absolute;
top: 50%;
font-size: 20px;
text-align: center;
width: 100%;
padding: 0 5px;
transform: translate(0, -50%);
opacity: 1;
transition: opacity 0.5s;
}
.al-imagemagnify-text-bg {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
opacity: 1;
transition: opacity 0.5s;
}
.al-move-transition {
transition: top 1s, left 1s, background-position 1s;
transition-timing-function: ease;
}
.al-move-linear.al-auto-move .al-move-transition {
transition-timing-function: linear;
}
.al-opacity-transition {
transition: all 0.5s;
}
.al-imagemagnify-attached {
position: absolute;
z-index: 1;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
}
.al-imagemagnify-attached .al-imagemagnify,
.al-imagemagnify-attached .al-imagemagnify > img {
width: 100%;
}