.DirectionsPerspective {
    display: block;
    position: absolute;
    pointer-events: none;
    transform-style: preserve-3d;
    z-index: 10;
}

.DirectionsCircle,
.DirectionsCircleSequence,
.DirectionsCircleDisabled,
.DirectionsCircleHighlight,
.DirectionsCircleSequenceHighlight {
    position: absolute;
    border-radius: 50%;
}

.DirectionsCircle,
.DirectionsCircleSequence,
.DirectionsCircleHighlight,
.DirectionsCircleSequenceHighlight {
    pointer-events: auto;
}

.DirectionsCircle:hover,
.DirectionsCircleSequence:hover,
.DirectionsCircleHighlight:hover,
.DirectionsCircleSequenceHighlight:hover {
    cursor: pointer;
}

.DirectionsCircle,
.DirectionsCircleSequence {
    background: rgba(0, 0, 0, 0);
}

.DirectionsCircleDisabled {
    background: rgba(0, 0, 0, 0);
    z-index: -1;
}

.DirectionsCircleHighlight,
.DirectionsCircleSequenceHighlight {
    background: rgba(0, 0, 0, 0.4);
}

.DirectionsArrowStep,
.DirectionsArrowPano,
.DirectionsArrowDisabled {
    position: absolute;
    top: 44%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 75%;
    height: 44.0775%;
    pointer-events: none;
}

.DirectionsArrowStep,
.DirectionsArrowDisabled {
    background: svg-load('svg/pointer-white.svg');
    background-repeat: no-repeat;
}

.DirectionsArrowDisabled {
    opacity: 0.2;
    z-index: -1;
}

.DirectionsArrowPano {
    background: svg-load('svg/pointer-wheat.svg');
    background-repeat: no-repeat;
}

.TurnCircle,
.TurnCircleSequence,
.TurnCircleHighlight,
.TurnCircleSequenceHighlight {
    position: absolute;
    border-radius: 50%;
    pointer-events: auto;
}

.TurnCircle,
.TurnCircleSequence {
    background: rgba(0, 0, 0, 0);
}

.TurnCircleHighlight,
.TurnCircleSequenceHighlight {
    background: rgba(0, 0, 0, 0.4);
}

.TurnCircle:hover,
.TurnCircleSequence:hover,
.TurnCircleHighlight:hover,
.TurnCircleSequenceHighlight:hover {
    cursor: pointer;
}

.TurnLeft,
.TurnRight,
.TurnAround {
    position: absolute;
    top: 50%;
    pointer-events: none;
    filter: drop-shadow(0px 2px 1px rgba(0, 0, 0, 0.8));
}

.TurnLeft,
.TurnRight {
    width: 58.794%;
    height: 70%;
}

.TurnAround {
    left: 50%;
    width: 75%;
    height: 63.2475%;
}

.TurnLeft {
    left: 45%;
    background: svg-load('svg/turn.svg');
    background-repeat: no-repeat;
    transform: translate(-50%, -50%);
}

.TurnRight {
    left: 55%;
    background: svg-load('svg/turn.svg');
    background-repeat: no-repeat;
    transform: translate(-50%, -50%) scaleX(-1);
}

.TurnAround {
    background: svg-load('svg/turn-around.svg');
    background-repeat: no-repeat;
    transform: translate(-50%, -50%);
}

@media (hover: hover) {
    .DirectionsCircle:hover,
    .DirectionsCircleSequence:hover {
        background: rgba(0, 0, 0, 0.4);
    }

    .TurnCircle:hover,
    .TurnCircleSequence:hover {
        background: rgba(0, 0, 0, 0.4);
    }
}
