.no-select {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.no-select * {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.re-tooltip {
    color: black;
    transition: color 0.15s linear;
}
.re-tooltip-inline {
    display: inline!important;
}
.re-tooltip-dotted {
    border-bottom: #bdbdbd 1px dotted;
}
.re-tooltip .text-icon {
    color: inherit;
    transition: color 0.15s linear;
}
.re-tooltip.otaznik:after {
    position: relative;
    left: 5px;
    top: 1px;
    font-family: "FontAwesome";
    color: #5aa2ff;
    content: "\f059";
    font-size: 13px;
    line-height: 18px;
    margin-right: 10px;
    white-space: nowrap;
    pointer-events: none;
}
.re-tooltip.otaznik-left:before {
    position: relative;
    left: 5px;
    top: 1px;
    font-family: "FontAwesome";
    color: #5aa2ff;
    content: "\f059";
    font-size: 13px;
    line-height: 18px;
    margin-right: 10px;
    white-space: nowrap;
    pointer-events: none;
}
.re-tooltip.otaznik-white:after {
    color: #ffffff !important;
}
.re-tooltip.otaznik-left-white:before {
    color: #ffffff !important;
}
.re-tooltip .otaznik:after {
    position: relative;
    left: 5px;
    top: 1px;
    font-family: "FontAwesome";
    color: #5aa2ff;
    content: "\f059";
    font-size: 13px;
    line-height: 18px;
    margin-right: 10px;
    white-space: nowrap;
    pointer-events: none;
}
.re-tooltip .otaznik-left:before {
    position: relative;
    left: 5px;
    top: 1px;
    font-family: "FontAwesome";
    color: #5aa2ff;
    content: "\f059";
    font-size: 13px;
    line-height: 18px;
    margin-right: 10px;
    white-space: nowrap;
    pointer-events: none;
}
.re-tooltip .otaznik.otaznik-white:after {
    color: #ffffff !important;
}
.re-tooltip:not(.no-hover):hover {
    color: #ababab;
    transition: color 0.25s linear;
}
.re-tooltip.design-light i, .re-tooltip.design-light .icon {
    color: #999;
    transition: color 0.15s linear;
}
.re-tooltip:not(.no-hover) .design-light:hover {
    color: #ababab;
    transition: color 0.15s linear;
}
.re-tooltip.design-blue i, .re-tooltip.design-blue .icon {
    color: #5aa2ff;
    transition: color 0.15s linear;
}
.re-tooltip:not(.no-hover) .design-blue:hover {
    color: #66a6fd;
    transition: color 0.15s linear;
}
.re-tooltip.design-green i, .re-tooltip.design-green .icon, .re-tooltip.design-green::after {
    color: #009d82;
    transition: color 0.15s linear;
}
.re-tooltip:not(.no-hover) .design-green:hover, .re-tooltip:not(.no-hover) .design-green:hover::after {
    color: #00bf9e;
    transition: color 0.15s linear;
}

.re-tooltip .re-content {
    display: none;
}

.re-tooltip i {
    border-bottom: #bdbdbd 1px dotted;
    cursor: help;
}
.re-icon-light {
    padding: 2px;
    color: #999;
}
.re-icon-green {
    padding: 2px;
    color: #009d82;
}
.re-icon-blue {
    padding: 2px;
    color: #5aa2ff;
}
.re-tooltip:hover .re-icon-light {
    padding: 2px;
    color: #ababab;
}
.re-tooltip:hover .re-icon-green {
    padding: 2px;
    color: #00bf9e;
}
.re-tooltip:hover .re-icon-blue {
    padding: 2px;
    color: #66a6fd;
}

.re-tooltip-block {
    position: absolute;
    top: 0px;
    left: 0px;

    z-index: 999999;
    min-width: 50px;
    max-width: 340px;
    min-height: 30px;
    padding: 5px;

    color: black;
    background-color: #fff;

    border: 1px solid #80808080;
    border-radius: 2px;

    display: none;
    opacity: 0;

    box-shadow: -1px 4px 10px 0px #00000052;
}
.re-tooltip-block.design-light {
    color: black;
    background-color: #fff;

    border: 1px solid #80808080;
    border-radius: 2px;
}
.re-tooltip-block.design-blue {
    color: black;
    background-color: #fff;

    border: 1px solid #dccb78;
    border-radius: 2px;
}
.re-tooltip-block.design-green {
    color: black;
    background-color: #fff;

    border: 1px solid #009d82;
    border-radius: 2px;
}
.re-tooltip-block .re-tooltip-block-content {
    position: relative;

    border-radius: 1px;

    height: 100%;
    width: 100%;

    overflow: hidden;

    background-color: white;
}

.re-tooltip-text {
    text-decoration: underline;
    text-decoration-color: #bdbdbd;
    text-decoration-style: dotted;
    text-underline-offset: 2px;
}

.re-tooltip-block i.fa.fa-times.re-tooltip-close {
    position: absolute;
    right: -10px;
    top: -10px;
    background-color: white;
    border: 3px solid #333;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    display: none;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    font-size: 85%;
    z-index: 99999;
    cursor: pointer;
    box-shadow: -1px 1px 4px 0px #00000047;
    pointer-events: auto;
}

@media (any-pointer: coarse) { /*linhart kvůli fancyboxu, který může být užší není třeba řešit rozlišení, ale jenom jestli je dotykový displej. */
    body .re-tooltip-block i.fa.fa-times.re-tooltip-close {
        display: flex;
    }
}

@media only screen and (max-width: 400px) {
    body .re-tooltip-block {
        max-width: calc(100% - 60px);
    }
}