.laymen {
    position: relative;
    display: inline-block;
    cursor: help;
    border-bottom: 1px dotted rgba(255,255,255,0.35);
    color: purple;
    padding: 0 0.08em;
    margin: 0 -0.08em;
}

.laymen:hover::after,
.laymen:focus::after,
.laymen:focus-visible::after,
.laymen.is-active::after {
    content: attr(data-tip);
    position: absolute;
    left: 50%;
    bottom: 140%;
    transform: translateX(-50%);
    min-width: 150px;
    max-width: 320px;
    white-space: normal;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(20,20,24,0.92);
    color: rgba(255,255,255,0.95);
    box-shadow: 0 10px 30px rgba(0,0,0,0.35);
    line-height: 1.25;
    font-size: 13px;
    z-index: 9999;
    font-family: Arial !important;
    font-size: 16px !important;
    font-weight: normal !important;
    pointer-events: none;
}

.laymen[data-tip-x="left"]:hover::after,
.laymen[data-tip-x="left"]:focus::after,
.laymen[data-tip-x="left"]:focus-visible::after,
.laymen[data-tip-x="left"].is-active::after {
    left: 0;
    transform: none;
}

.laymen[data-tip-x="right"]:hover::after,
.laymen[data-tip-x="right"]:focus::after,
.laymen[data-tip-x="right"]:focus-visible::after,
.laymen[data-tip-x="right"].is-active::after {
    left: auto;
    right: 0;
    transform: none;
}

.laymen[data-tip-y="bottom"]:hover::after,
.laymen[data-tip-y="bottom"]:focus::after,
.laymen[data-tip-y="bottom"]:focus-visible::after,
.laymen[data-tip-y="bottom"].is-active::after {
    bottom: auto;
    top: 140%;
}

.laymen:hover::before,
.laymen:focus::before,
.laymen:focus-visible::before,
.laymen.is-active::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 120%;
    transform: translateX(-50%);
    border: 7px solid transparent;
    border-top-color: rgba(20,20,24,0.92);
    z-index: 9999;
    pointer-events: none;
}

.laymen[data-tip-x="left"]:hover::before,
.laymen[data-tip-x="left"]:focus::before,
.laymen[data-tip-x="left"]:focus-visible::before,
.laymen[data-tip-x="left"].is-active::before {
    left: 18px;
    transform: none;
}

.laymen[data-tip-x="right"]:hover::before,
.laymen[data-tip-x="right"]:focus::before,
.laymen[data-tip-x="right"]:focus-visible::before,
.laymen[data-tip-x="right"].is-active::before {
    left: auto;
    right: 18px;
    transform: none;
}

.laymen[data-tip-y="bottom"]:hover::before,
.laymen[data-tip-y="bottom"]:focus::before,
.laymen[data-tip-y="bottom"]:focus-visible::before,
.laymen[data-tip-y="bottom"].is-active::before {
    bottom: auto;
    top: 120%;
    border-top-color: transparent;
    border-bottom-color: rgba(20,20,24,0.92);
}