[data-wenk] { position: relative }

[data-wenk]:after {
    position: absolute;
    font-size: 13px;
    border-radius: .4rem;
    content: attr(data-wenk);
    padding: 12.8px;
    padding: 7px 14px;
    background-color: rgba(17, 17, 17, .8);
    -webkit-box-shadow: 0 0 14px rgba(0, 0, 0, .1);
            box-shadow: 0 0 14px rgba(0, 0, 0, .1);
    color: #fff;
    line-height: 20px;
    line-height: 1.25rem;
    text-align: left;
    z-index: 102;
    pointer-events: none;
    display: block;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .3s;
    transition: all .3s;
    bottom: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, 10px);
            transform: translate(-50%, 10px);
    white-space: pre;
    width: auto;
}

[data-wenk]:after { opacity: 0; }
[data-wenk]:hover { overflow: visible }

[data-wenk]:hover:after {
    display: block;
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(-50%, -10px);
            transform: translate(-50%, -10px);
}

[data-wenk].wenk--bottom:after, [data-wenk][data-wenk-pos="bottom"]:after {
    bottom: auto;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, -10px);
            transform: translate(-50%, -10px);
}

[data-wenk].wenk--bottom:hover:after, [data-wenk][data-wenk-pos="bottom"]:hover:after {
    -webkit-transform: translate(-50%, 10px);
            transform: translate(-50%, 10px);
}

[data-wenk].wenk--left:after, [data-wenk][data-wenk-pos="left"]:after {
    bottom: auto;
    left: auto;
    top: 50%;
    right: 100%;
    -webkit-transform: translate(10px, -50%);
            transform: translate(10px, -50%);
}

[data-wenk].wenk--left:hover:after, [data-wenk][data-wenk-pos="left"]:hover:after {
    -webkit-transform: translate(-10px, -50%);
            transform: translate(-10px, -50%);
}

[data-wenk].wenk--right:after, [data-wenk][data-wenk-pos="right"]:after {
    bottom: auto;
    top: 50%;
    left: 100%;
    -webkit-transform: translate(-10px, -50%);
            transform: translate(-10px, -50%);
}

[data-wenk].wenk--right:hover:after, [data-wenk][data-wenk-pos="right"]:hover:after {
    -webkit-transform: translate(10px, -50%);
            transform: translate(10px, -50%);
}

[data-wenk][data-wenk-length="small"]:after, [data-wenk].wenk-length--small:after {
    white-space: normal;  width: 80px;
}

[data-wenk][data-wenk-length="medium"]:after, [data-wenk].wenk-length--medium:after {
    white-space: normal;  width: 150px;
}

[data-wenk][data-wenk-length="large"]:after, [data-wenk].wenk-length--large:after {
    white-space: normal; width: 260px;
}

[data-wenk][data-wenk-length="fit"]:after, [data-wenk].wenk-length--fit:after {
    white-space: normal; width: 100%;
}

[data-wenk][data-wenk-align="right"]:after, [data-wenk].wenk-align--right:after { text-align: right; }
[data-wenk][data-wenk-align="center"]:after, [data-wenk].wenk-align--center:after { text-align: center; }
[data-wenk=""]:after { visibility: hidden !important; }

[data-wenk].wenk200:after {
    white-space: pre-wrap;
    width: 200px!important;
}