[data-pitooltip],
.pitooltip {
position: relative;
cursor: pointer;
} [data-pitooltip]:before,
[data-pitooltip]:after,
.pitooltip:before,
.pitooltip:after {
position: absolute;
visibility: hidden;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
opacity: 0;
-webkit-transition:
opacity 0.2s ease-in-out,
visibility 0.2s ease-in-out,
-webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
-moz-transition:
opacity 0.2s ease-in-out,
visibility 0.2s ease-in-out,
-moz-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
transition:
opacity 0.2s ease-in-out,
visibility 0.2s ease-in-out,
transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
pointer-events: none;
} [data-pitooltip]:hover:before,
[data-pitooltip]:hover:after,
[data-pitooltip]:focus:before,
[data-pitooltip]:focus:after,
.pitooltip:hover:before,
.pitooltip:hover:after,
.pitooltip:focus:before,
.pitooltip:focus:after {
visibility: visible;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
opacity: 1;
} .pitooltip:before,
[data-pitooltip]:before {
z-index: 1001;
border: 6px solid transparent;
background: transparent;
content: "";
} .pitooltip:after,
[data-pitooltip]:after {
z-index: 1000;
padding: 8px;
width: 160px;
background-color: #000;
background-color: hsla(0, 0%, 20%, 0.9);
color: #fff;
content: attr(data-pitooltip);
font-size: 14px;
line-height: 1.2;
}  .pitooltip {
display: inline-flex;
width: 20px;
background: #ccc;
text-align: center;
margin-left: 15px;
border-radius: 15px;
height: 20px;
align-items: center;
justify-content: center;
}
[data-pitooltip]:before,
[data-pitooltip]:after,
.pitooltip:before,
.pitooltip:after,
.pitooltip-top:before,
.pitooltip-top:after {
bottom: 100%;
left: 50%;
}
[data-pitooltip]:before,
.pitooltip:before,
.pitooltip-top:before {
margin-left: -6px;
margin-bottom: -12px;
border-top-color: #000;
border-top-color: hsla(0, 0%, 20%, 0.9);
} [data-pitooltip]:after,
.pitooltip:after,
.pitooltip-top:after {
margin-left: -80px;
}
[data-pitooltip]:hover:before,
[data-pitooltip]:hover:after,
[data-pitooltip]:focus:before,
[data-pitooltip]:focus:after,
.pitooltip:hover:before,
.pitooltip:hover:after,
.pitooltip:focus:before,
.pitooltip:focus:after,
.pitooltip-top:hover:before,
.pitooltip-top:hover:after,
.pitooltip-top:focus:before,
.pitooltip-top:focus:after {
-webkit-transform: translateY(-12px);
-moz-transform: translateY(-12px);
transform: translateY(-12px);
} .pitooltip-left:before,
.pitooltip-left:after {
right: 100%;
bottom: 50%;
left: auto;
}
.pitooltip-left:before {
margin-left: 0;
margin-right: -12px;
margin-bottom: 0;
border-top-color: transparent;
border-left-color: #000;
border-left-color: hsla(0, 0%, 20%, 0.9);
}
.pitooltip-left:hover:before,
.pitooltip-left:hover:after,
.pitooltip-left:focus:before,
.pitooltip-left:focus:after {
-webkit-transform: translateX(-12px);
-moz-transform: translateX(-12px);
transform: translateX(-12px);
} .pitooltip-bottom:before,
.pitooltip-bottom:after {
top: 100%;
bottom: auto;
left: 50%;
}
.pitooltip-bottom:before {
margin-top: -12px;
margin-bottom: 0;
border-top-color: transparent;
border-bottom-color: #000;
border-bottom-color: hsla(0, 0%, 20%, 0.9);
}
.pitooltip-bottom:hover:before,
.pitooltip-bottom:hover:after,
.pitooltip-bottom:focus:before,
.pitooltip-bottom:focus:after {
-webkit-transform: translateY(12px);
-moz-transform: translateY(12px);
transform: translateY(12px);
} .pitooltip-right:before,
.pitooltip-right:after {
bottom: 50%;
left: 100%;
}
.pitooltip-right:before {
margin-bottom: 0;
margin-left: -12px;
border-top-color: transparent;
border-right-color: #000;
border-right-color: hsla(0, 0%, 20%, 0.9);
}
.pitooltip-right:hover:before,
.pitooltip-right:hover:after,
.pitooltip-right:focus:before,
.pitooltip-right:focus:after {
-webkit-transform: translateX(12px);
-moz-transform: translateX(12px);
transform: translateX(12px);
} .pitooltip-left:before,
.pitooltip-right:before {
top: 3px;
} .pitooltip-left:after,
.pitooltip-right:after {
margin-left: 0;
margin-bottom: -16px;
}