/* tooltips */

[data-tooltip].top:before, [data-tooltip].top:after {
    transform: translateY(10px);
}

[data-tooltip].top:hover:before, [data-tooltip].top:hover:after {
    transform: translateY(0px);
}

[data-tooltip].right:before, [data-tooltip].right:after {
    transform: translateX(0px);
}

[data-tooltip].right:hover:before, [data-tooltip].right:hover:after {
    transform: translateX(10px);
}

[data-tooltip].bottom:before, [data-tooltip].bottom:after {
    transform: translateY(-10px);
}

[data-tooltip].bottom:hover:before, [data-tooltip].bottom:hover:after {
    transform: translateY(0px);
}

[data-tooltip].left:before, [data-tooltip].left:after {
    transform: translateX(0px);
}

[data-tooltip].left:hover:before, [data-tooltip].left:hover:after {
    transform: translateX(-10px);
}

[data-tooltip] {
    position: relative;
}

[data-tooltip]:after, 
[data-tooltip]:before {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: transform 200ms ease, opacity 200ms;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 3px 8px;
    z-index: 99;
}

[data-tooltip]:before {
    content: attr(data-tooltip);
    background: #000;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    padding: 10px 15px;
    border-radius: 5px;
    /* white-space: nowrap; */
    text-decoration: none;
    /* text-transform: uppercase; */
    /* letter-spacing: 1px; */
    width: 200px;
    text-align: center;
    line-height: initial;
}

[data-tooltip]:after {
    width: 0;
    height: 0;
    border: 6px solid transparent;
    content: '';
}

[data-tooltip].show-tooltip:after, [data-tooltip].show-tooltip:before, [data-tooltip]:hover:after, [data-tooltip]:hover:before {
    visibility: visible;
    opacity: 0.85;
    transform: translateY(0px);
}

[data-tooltip][data-position="top"]:before {
    bottom: 100%;
    left: -130%;
    margin-bottom: 10px;
}

[data-tooltip][data-position="top"]:after {
    border-top-color: #000;
    border-bottom: none;
    bottom: 101%;
    left: calc(50% - 6px);
    margin-bottom: 4px;
}

[data-tooltip][data-position="left"]:before {
    top: -12%;
    right: 100%;
    margin-right: 10px;
}

[data-tooltip][data-position="left"]:after {
    border-left-color: #000;
    border-right: none;
    top: calc(50% - 3px);
    right: 100%;
    margin-top: -6px;
    margin-right: 4px;
}

[data-tooltip][data-position="right"]:before {
    top: -5%;
    left: 100%;
    margin-left: 10px;
}

[data-tooltip][data-position="right"]:after {
    border-right-color: #000;
    border-left: none;
    top: calc(50% - 6px);
    left: calc(100% + 4px);
}

[data-tooltip][data-position="bottom"]:before {
    top: 100%;
    left: -130%;
    margin-top: 10px;
}

[data-tooltip][data-position="bottom"]:after {
    border-bottom-color: #000;
    border-top: none;
    top: 100%;
    left: 5px;
    margin-top: 4px;
}